Ensure the Docker nginx user can write servers.json. Fixes #1046

This commit is contained in:
Jinna Kiisuo 2024-01-29 23:04:28 +02:00
parent b12bb6cdc5
commit 9854c45fb2

View file

@ -9,7 +9,13 @@ ARG UID=101
LABEL maintainer="Alejandro Celaya <alejandro@alejandrocelaya.com>" LABEL maintainer="Alejandro Celaya <alejandro@alejandrocelaya.com>"
USER root USER root
RUN rm -r /usr/share/nginx/html && rm /etc/nginx/conf.d/default.conf RUN rm -r /usr/share/nginx/html && rm /etc/nginx/conf.d/default.conf
USER $UID
COPY config/docker/nginx.conf /etc/nginx/conf.d/default.conf COPY config/docker/nginx.conf /etc/nginx/conf.d/default.conf
COPY scripts/docker/servers_from_env.sh /docker-entrypoint.d/30-shlink-servers-json.sh COPY scripts/docker/servers_from_env.sh /docker-entrypoint.d/30-shlink-servers-json.sh
COPY --from=node /shlink-web-client/build /usr/share/nginx/html COPY --from=node /shlink-web-client/build /usr/share/nginx/html
# Allow the nginx user to create new files in the html dir, but not modify existing files.
# This is required by 30-shlink-servers-json.sh
RUN chown :$UID /usr/share/nginx/html && chmod g+wx /usr/share/nginx/html
# Switch to non-privileged UID as the last step
USER $UID