diff options
Diffstat (limited to 'dev/Dockerfile.local')
-rw-r--r-- | dev/Dockerfile.local | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/dev/Dockerfile.local b/dev/Dockerfile.local new file mode 100644 index 00000000..f990b3ee --- /dev/null +++ b/dev/Dockerfile.local @@ -0,0 +1,39 @@ +# Image page: <https://hub.docker.com/_/golang> +FROM --platform=${TARGETPLATFORM:-linux/amd64} golang:alpine as builder + +# app version and build date must be passed during image building (version without any prefix). +# e.g.: `docker build --build-arg "APP_VERSION=1.2.3" --build-arg "BUILD_TIME=$(date +%FT%T%z)" .` +ARG APP_VERSION="undefined" +ARG BUILD_TIME="undefined" + +COPY . /src + +# Image page: <https://hub.docker.com/_/alpine> +# https://alpinelinux.org/posts/Alpine-3.13.4-released.html +# Critical issue with 3.13.3 https://nvd.nist.gov/vuln/detail/CVE-2021-28831 +FROM --platform=${TARGETPLATFORM:-linux/amd64} php:latest + +# use same build arguments for image labels +ARG APP_VERSION="undefined" +ARG BUILD_TIME="undefined" + +# copy required files from builder image +COPY --from=builder /src/rr /usr/bin/rr +COPY --from=builder /src/.rr-docker.yaml /etc/rr-docker.yaml +COPY --from=builder /src/composer.json /etc/composer.json +COPY --from=builder /src/psr-worker.php /etc/psr-worker.php + +WORKDIR /etc + +RUN docker-php-ext-install sockets + +RUN apt update -y +RUN apt upgrade -y +RUN apt install git zip unzip -y + +RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer + +RUN composer install + +# use roadrunner binary as image entrypoint +ENTRYPOINT ["/usr/bin/rr"] |