Skip to content

Commit

Permalink
[Dockerfile-nodejs] Update base image to Node v22.11 (#24)
Browse files Browse the repository at this point in the history
* [Dockerfile-nodejs] Update base image to Node v22.11

* task: [Dockerfile-nodejs] Add comment about image tag used
  • Loading branch information
meissadia authored Nov 13, 2024
1 parent 2910157 commit c66622b
Showing 1 changed file with 45 additions and 43 deletions.
88 changes: 45 additions & 43 deletions images/Dockerfile-nodejs
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
FROM node:18.20-alpine3.20 as build-stage
# Tag image as: ghcr.io/cfpb/regtech/sbl/node-js-alpine:3.20

FROM node:22.11-alpine3.20 as build-stage
WORKDIR /usr/src/app
ARG DOCKER_TAG="latest"

Expand All @@ -7,63 +9,63 @@ ENV HOSTNAME cfpb-nodejs-alpine
ENV ENV="/etc/profile"

RUN echo "printf \" ***************************************************************************************************************************\n\
This is a Consumer Financial Protection Bureau (CFPB) information system. The CFPB is an independent agency\n\
of the United States Government. CFPB information systems are provided for the processing of official information\n\
only. Unauthorized or improper use of this system may result in administrative action, as well as civil and\n\
criminal penalties. Because this is a CFPB information system, you have no reasonable expectation of privacy\n\
regarding any communication or data transiting or stored on this information system. All data contained on CFPB\n\
information systems is owned by CFPB and your use of the CFPB information system serves as your consent to your\n\
usage being monitored, intercepted, recorded, read, copied, captured or otherwise audited in any manner, by\n\
authorized personnel, including but not limited to employees, contractors and/or agents of the United States Government.\n\
***************************************************************************************************************************\n\"" >> /etc/profile
This is a Consumer Financial Protection Bureau (CFPB) information system. The CFPB is an independent agency\n\
of the United States Government. CFPB information systems are provided for the processing of official information\n\
only. Unauthorized or improper use of this system may result in administrative action, as well as civil and\n\
criminal penalties. Because this is a CFPB information system, you have no reasonable expectation of privacy\n\
regarding any communication or data transiting or stored on this information system. All data contained on CFPB\n\
information systems is owned by CFPB and your use of the CFPB information system serves as your consent to your\n\
usage being monitored, intercepted, recorded, read, copied, captured or otherwise audited in any manner, by\n\
authorized personnel, including but not limited to employees, contractors and/or agents of the United States Government.\n\
***************************************************************************************************************************\n\"" >> /etc/profile

RUN delgroup mail mail &>/dev/null && \
deluser postmaster &>/dev/null && \
deluser adm && \
deluser lp &>/dev/null && \
deluser news &>/dev/null && \
deluser uucp &>/dev/null && \
deluser man &>/dev/null && \
deluser cron &>/dev/null && \
deluser ftp &>/dev/null && \
deluser sshd &>/dev/null && \
deluser at &>/dev/null && \
deluser squid &>/dev/null && \
deluser xfs &>/dev/null && \
deluser games &>/dev/null && \
deluser cyrus &>/dev/null && \
deluser vpopmail &>/dev/null && \
deluser ntp &>/dev/null && \
deluser smmsp &>/dev/null && \
deluser guest &>/dev/null && \
deluser operator &>/dev/null && \
deluser halt &>/dev/null && \
deluser shutdown &>/dev/null && \
deluser sync &>/dev/null && \
deluser bin &>/dev/null && \
deluser nobody &>/dev/null && \
deluser mail &>/dev/null; exit 0;
deluser postmaster &>/dev/null && \
deluser adm && \
deluser lp &>/dev/null && \
deluser news &>/dev/null && \
deluser uucp &>/dev/null && \
deluser man &>/dev/null && \
deluser cron &>/dev/null && \
deluser ftp &>/dev/null && \
deluser sshd &>/dev/null && \
deluser at &>/dev/null && \
deluser squid &>/dev/null && \
deluser xfs &>/dev/null && \
deluser games &>/dev/null && \
deluser cyrus &>/dev/null && \
deluser vpopmail &>/dev/null && \
deluser ntp &>/dev/null && \
deluser smmsp &>/dev/null && \
deluser guest &>/dev/null && \
deluser operator &>/dev/null && \
deluser halt &>/dev/null && \
deluser shutdown &>/dev/null && \
deluser sync &>/dev/null && \
deluser bin &>/dev/null && \
deluser nobody &>/dev/null && \
deluser mail &>/dev/null; exit 0;

RUN sed -i '1d' /etc/passwd && \
sed -i '1 i\root:x:0:0:root:/root:/bin/nologin' /etc/passwd
sed -i '1 i\root:x:0:0:root:/root:/bin/nologin' /etc/passwd

RUN apk update && \
apk upgrade
apk upgrade

SHELL ["/bin/sh", "-o", "pipefail", "-c"]

RUN echo -e "https://alpine.global.ssl.fastly.net/alpine/v$(cut -d . -f 1,2 < /etc/alpine-release)/main" > /etc/apk/repositories && \
echo -e "https://alpine.global.ssl.fastly.net/alpine/v$(cut -d . -f 1,2 < /etc/alpine-release)/community" >> /etc/apk/repositories
echo -e "https://alpine.global.ssl.fastly.net/alpine/v$(cut -d . -f 1,2 < /etc/alpine-release)/community" >> /etc/apk/repositories

RUN rm -fr /var/spool/cron /etc/crontabs /etc/periodic

RUN find /sbin /usr/sbin \
! -type d -a ! -name apk -a ! -name ln \
-delete

RUN find / -xdev -type d -perm +0002 -exec chmod o-w {} + \
&& find / -xdev -type f -perm +0002 -exec chmod o-w {} + \
&& chmod 777 /tmp/
&& find / -xdev -type f -perm +0002 -exec chmod o-w {} + \
&& chmod 777 /tmp/

RUN find /bin /etc /lib /sbin /usr -xdev \( \
-iname hexdump -o \
Expand Down

0 comments on commit c66622b

Please sign in to comment.