# # The arguments in this file are configured in # /scripts/custom-docker-build # ARG CUSTOM_IMAGE_NAME ARG CUSTOM_IMAGE_VERSION FROM ${CUSTOM_IMAGE_NAME}:${CUSTOM_IMAGE_VERSION} ADD / / RUN /scripts/install-essentials ENV PATH $PATH:/usr/local/go/bin # Ruby ARG RUBY_VERSION ARG RUBY_DOWNLOAD_SHA256 ARG BUNDLER_VERSION RUN if [ -n "$RUBY_VERSION" ]; then /scripts/install-ruby $RUBY_VERSION $RUBY_DOWNLOAD_SHA256 $BUNDLER_VERSION && ruby --version; fi # Git ARG GIT_VERSION ARG GIT_DOWNLOAD_URL ARG GIT_DOWNLOAD_SHA256 RUN if [ -n "$GIT_VERSION" ]; then /scripts/install-pcre2 && pcre2-config --version; fi RUN if [ -n "$GIT_VERSION" ]; then /scripts/install-git && git --version; fi # Chrome ARG CHROME_VERSION ARG CHROME_DRIVER_VERSION RUN if [ -n "$CHROME_VERSION" ]; then /scripts/install-chrome $CHROME_VERSION $CHROME_DRIVER_VERSION && ( google-chrome --version || chromium --version ); fi # NodeJS and Yarn ARG NODE_INSTALL_VERSION ARG YARN_INSTALL_VERSION RUN if [ -n "$NODE_INSTALL_VERSION" ] ; then /scripts/install-node $NODE_INSTALL_VERSION $YARN_INSTALL_VERSION && node --version && yarn --version; fi # Golang ARG INSTALL_GOLANG_VERSION ARG GOLANG_DOWNLOAD_SHA256 RUN if [ -n "$INSTALL_GOLANG_VERSION" ] ; then /scripts/install-golang "${INSTALL_GOLANG_VERSION}" "${GOLANG_DOWNLOAD_SHA256}" && go version; fi # Git LFS (https://git-lfs.github.com/) ARG LFS_VERSION ARG LFS_DOWNLOAD_SHA256 RUN if [ -n "$LFS_VERSION" ]; then /scripts/install-lfs && git lfs --version; fi # Postgres ARG POSTGRES_VERSION RUN if [ -n "$POSTGRES_VERSION" ] ; then /scripts/install-postgresql $POSTGRES_VERSION; fi # GraphicsMagick ARG GRAPHISMAGICK_VERSION ARG GRAPHISMAGICK_DOWNLOAD_URL=https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/${GRAPHISMAGICK_VERSION}/GraphicsMagick-${GRAPHISMAGICK_VERSION}.tar.gz ARG GRAPHISMAGICK_DOWNLOAD_SHA256 RUN if [ -n "$GRAPHISMAGICK_VERSION" ]; then /scripts/install-graphicsmagick && gm version; fi # Docker ARG DOCKER_VERSION RUN if [ -n "$DOCKER_VERSION" ]; then /scripts/install-docker $DOCKER_VERSION; fi # Docker buildx plugin ARG BUILDX_VERSION ARG BUILDX_DOWNLOAD_SHA256 RUN if [ -n "$BUILDX_VERSION" ]; then /scripts/install-buildx $BUILDX_VERSION $BUILDX_DOWNLOAD_SHA256; fi # PgBouncer ARG PGBOUNCER_VERSION ARG PGBOUNCER_DOWNLOAD_SHA256 RUN if [ -n "$PGBOUNCER_VERSION" ] ; then /scripts/install-pgbouncer $PGBOUNCER_VERSION $PGBOUNCER_DOWNLOAD_SHA256; fi # Bazelisk ARG BAZELISK_VERSION ARG BAZELISK_DOWNLOAD_SHA256 RUN if [ -n "$BAZELISK_VERSION" ] ; then /scripts/install-bazelisk $BAZELISK_VERSION $BAZELISK_DOWNLOAD_SHA256; fi # Google-cloud-sdk ARG GCLOUD_VERSION RUN if [ -n "$GCLOUD_VERSION" ] ; then /scripts/install-gcloud $GCLOUD_VERSION; fi # Kubectl ARG KUBECTL_VERSION ARG KUBECTL_DOWNLOAD_SHA256 RUN if [ -n "$KUBECTL_VERSION" ] ; then /scripts/install-kubectl $KUBECTL_VERSION $KUBECTL_DOWNLOAD_SHA256; fi RUN locale-gen C.UTF-8 ENV LANG=C.UTF-8 \ LANGUAGE=C \ LC_ALL=C.UTF-8 RUN /scripts/validate-binaries-architecture # Set as env variables all versions configured ENV RUBY_VERSION=${RUBY_VERSION} \ GIT_VERSION=${GIT_VERSION} \ CHROME_VERSION=${CHROME_VERSION} \ NODE_VERSION=${NODE_INSTALL_VERSION} \ YARN_VERSION=${YARN_INSTALL_VERSION} \ GOLANG_VERSION=${INSTALL_GOLANG_VERSION} \ LFS_VERSION=${LFS_VERSION} \ POSTGRES_VERSION=${POSTGRES_VERSION} \ GRAPHISMAGICK_VERSION=${GRAPHISMAGICK_VERSION} \ DOCKER_VERSION=${DOCKER_VERSION} \ PGBOUNCER_VERSION=${PGBOUNCER_VERSION} \ BAZELISK_VERSION=${BAZELISK_VERSION} \ GCLOUD_VERSION=${GCLOUD_VERSION} \ KUBECTL_VERSION=${KUBECTL_VERSION} \ DEBIAN_VERSION=${DEBIAN_VERSION}