🐳 refactor to add user

This commit is contained in:
Jeremy Chauvin 2022-02-18 08:01:36 +01:00
parent 4f4f9963c7
commit bbbcd09b44
No known key found for this signature in database
GPG Key ID: 6AE49B6B093E1A78
1 changed files with 19 additions and 10 deletions

View File

@ -31,22 +31,31 @@ FROM node:16.13.2-alpine
ENV PORT=80 \
DIRECTORY=/app \
IS_DOCKER=true \
UID=1000 \
GUID=1000
USER=docker \
UID=12345 \
GID=23456
# Create a group and user
RUN addgroup --gid ${GUID} application \
&& adduser --no-create-home --uid ${UID} application application
# Install tini for initialization and tzdata for setting timezone
RUN apk add --no-cache tzdata tini \
# Add group
&& addgroup --gid ${GID} "${USER}" \
# Add user
&& adduser \
--disabled-password \
--ingroup "${USER}" \
--gecos "" \
--home "${DIRECTORY}" \
--no-create-home \
--uid "$UID" \
"$USER"
USER ${USER}
USER application
# Create and set the working directory
WORKDIR ${DIRECTORY}
# Install tini for initialization and tzdata for setting timezone
RUN apk add --no-cache tzdata tini
# Copy built application from build phase
COPY --from=BUILD_IMAGE /app ./
COPY --from=BUILD_IMAGE --chown=${USER}:${USER} /app ./
# Finally, run start command to serve up the built application
ENTRYPOINT [ "/sbin/tini", "--" ]