struct(entrypoint): skeleton entrypoint script
- basic operation flow with placeholder functions - implement server and shell launch - allow commands to pass to shell - update Dockerfile to load entrypoint only - update Dockerfile to set permissions for certs directory
This commit is contained in:
+8
-8
@@ -11,13 +11,17 @@ RUN deluser --remove-home node \
|
||||
&& addgroup -g ${NODE_UID} -S node \
|
||||
&& adduser -G node -S -u ${NODE_UID} node
|
||||
|
||||
# create default volumes in-case user forgets, expose default port
|
||||
VOLUME [ "/var/watch", "/var/certs" ]
|
||||
EXPOSE 35729
|
||||
|
||||
# add tini, timezone support and create certificate directories
|
||||
RUN apk --update --no-cache add \
|
||||
tini \
|
||||
tzdata \
|
||||
&& mkdir /certs \
|
||||
&& chown node:node /certs \
|
||||
&& chmod 700 certs
|
||||
&& chmod 700 certs \
|
||||
&& chmod +r /var/watch
|
||||
|
||||
# labels
|
||||
LABEL org.opencontainers.image.authors="Asif Bacchus <asif@asifbacchus.dev>"
|
||||
@@ -27,10 +31,6 @@ LABEL org.opencontainers.image.url="https://git.asifbacchus.dev/ab-docker/livere
|
||||
LABEL org.opencontainers.image.documentation="https://git.asifbacchus.dev/ab-docker/livereload/raw/branch/master/README.md"
|
||||
LABEL org.opencontainers.image.source="https://git.asifbacchus.dev/ab-docker/livereload.git"
|
||||
|
||||
# create default volume in-case user forgets, expose default port
|
||||
VOLUME [ "/var/watch" ]
|
||||
EXPOSE 35729
|
||||
|
||||
# default environment variables
|
||||
ENV NODE_ENV=production
|
||||
ENV NPM_CONFIG_PREFIX=/home/node/.npm-global
|
||||
@@ -49,10 +49,10 @@ RUN mkdir -p .npm-global/bin .npm-global/lib \
|
||||
&& npm config set update-notifier false \
|
||||
&& npm install livereload --save
|
||||
COPY [ "livereload.js", "livereload.js" ]
|
||||
COPY [ "entrypoint.sh", "/usr/local/bin/entrypoint.sh" ]
|
||||
|
||||
# run server via tini by default
|
||||
ENTRYPOINT [ "/sbin/tini", "--" ]
|
||||
CMD [ "node", "livereload.js" ]
|
||||
ENTRYPOINT [ "/sbin/tini", "--", "/usr/local/bin/entrypoint.sh" ]
|
||||
|
||||
# set build timestamp and version labels
|
||||
ARG BUILD_DATE
|
||||
|
||||
Reference in New Issue
Block a user