mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-14 17:02:49 +03:00
3458dafca4
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4749 GitOrigin-RevId: c4fc317336f7580851711379fc1802eb141e72e8
48 lines
1.9 KiB
Docker
48 lines
1.9 KiB
Docker
# DATE VERSION: 2022-06-16
|
|
# Modify the above date version (YYYY-MM-DD) if you want to rebuild the image for security updates
|
|
FROM quay.io/centos/centos@sha256:8f2c5bfa77df306ae5f34bac3303055b5e5a443e56f4acdb26b80d2e921e657a
|
|
|
|
# TARGETPLATFORM is automatically set up by docker buildx based on the platform we are targetting for
|
|
ARG TARGETPLATFORM
|
|
|
|
RUN groupadd -g 1001 hasura && useradd -m -u 1001 -g hasura hasura
|
|
|
|
# Dependencies taken from: https://github.com/0x777/hge-arm-dockerfiles/blob/master/hge.df
|
|
# Below are the CentOS libraries matching these apt/Debian ones:
|
|
# libpq5 libkrb5-3 libnuma1 ca-certificates (ca-certificates are preinstalled)
|
|
#
|
|
# yum/dnf update/upgrade uses --nobest option to tackle https://github.com/hasura/graphql-engine-mono/issues/4096
|
|
RUN yum update -y --nobest \
|
|
&& yum install -y dnf \
|
|
&& dnf upgrade -y --nobest \
|
|
&& dnf -qy module disable postgresql \
|
|
&& dnf install -y \
|
|
krb5-libs \
|
|
numactl-libs \
|
|
libstdc++ \
|
|
&& case "$TARGETPLATFORM" in \
|
|
"linux/amd64") \
|
|
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm \
|
|
;; \
|
|
"linux/arm64") \
|
|
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-aarch64/pgdg-redhat-repo-latest.noarch.rpm \
|
|
;; \
|
|
esac \
|
|
&& dnf install -y postgresql14-devel \
|
|
# delete all pg tools except pg_dump to keep the image minimal
|
|
&& find /usr/bin -name 'pg*' -not -path '/usr/bin/pg_dump' -delete
|
|
|
|
# msodbcsql17
|
|
RUN yum remove unixODBC-utf16 unixODBC-utf16-devel \
|
|
&& yum install -y unixODBC-devel \
|
|
&& if [ "$TARGETPLATFORM" = "linux/amd64" ] ; then \
|
|
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssql-release.repo \
|
|
&& ACCEPT_EULA=Y yum install -y msodbcsql17 ; \
|
|
fi
|
|
|
|
# mysql
|
|
RUN dnf install -y mariadb-connector-c pcre-devel \
|
|
&& ln -s /usr/lib64/libpcre.so /usr/lib64/libpcre.so.3
|
|
|
|
RUN yum clean all && rm -rf /var/cache/yum
|