Dockerfile 894 B

1234567891011121314151617181920212223242526272829303132333435
  1. FROM nginx:1.18-alpine
  2. MAINTAINER Mark Shust <mark@shust.com>
  3. RUN addgroup -g 1000 app \
  4. && adduser -G app -u 1000 -h /var/www -s /bin/bash -S app
  5. RUN touch /var/run/nginx.pid
  6. RUN mkdir /sock
  7. RUN apk add --no-cache \
  8. curl \
  9. nss-tools \
  10. openssl
  11. RUN mkdir /etc/nginx/certs \
  12. && echo -e "\n\n\n\n\n\n\n" | openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/certs/nginx.key -out /etc/nginx/certs/nginx.crt
  13. ARG TARGETARCH
  14. RUN cd /usr/local/bin/ \
  15. && curl -L https://github.com/FiloSottile/mkcert/releases/download/v1.4.3/mkcert-v1.4.3-linux-$TARGETARCH -o mkcert \
  16. && chmod +x mkcert
  17. COPY ./conf/nginx.conf /etc/nginx/
  18. COPY ./conf/default.conf /etc/nginx/conf.d/
  19. RUN mkdir -p /etc/nginx/html /var/www/html \
  20. && chown -R app:app /etc/nginx /var/www /var/cache/nginx /var/run/nginx.pid /sock
  21. EXPOSE 8443
  22. USER app:app
  23. VOLUME /var/www
  24. WORKDIR /var/www/html