2023-01-20 17:42:17 +00:00
|
|
|
#FROM node:17.9.0-alpine3.15 as builder
|
|
|
|
FROM node:18-alpine3.15 as builder
|
2022-01-30 00:48:10 +00:00
|
|
|
#
|
2022-06-02 13:36:54 +00:00
|
|
|
# Prep and build Cyberchef
|
2023-01-20 17:42:17 +00:00
|
|
|
ENV CY_VER=v9.55.0
|
2022-06-02 13:36:54 +00:00
|
|
|
RUN apk -U --no-cache add build-base git python3 && \
|
2022-01-30 00:48:10 +00:00
|
|
|
chown -R node:node /srv && \
|
|
|
|
npm install -g grunt-cli
|
|
|
|
WORKDIR /srv
|
|
|
|
USER node
|
2022-06-02 13:36:54 +00:00
|
|
|
RUN git clone https://github.com/gchq/cyberchef -b $CY_VER . && \
|
2022-01-30 00:48:10 +00:00
|
|
|
NODE_OPTIONS=--max_old_space_size=2048 && \
|
|
|
|
npm install && \
|
|
|
|
grunt prod && \
|
|
|
|
cd build/prod && \
|
2022-06-02 13:36:54 +00:00
|
|
|
rm CyberChef_$CY_VER.zip && \
|
2022-01-30 00:48:10 +00:00
|
|
|
tar cvfz cyberchef.tgz *
|
|
|
|
#
|
|
|
|
FROM scratch AS exporter
|
|
|
|
COPY --from=builder /srv/build/prod/cyberchef.tgz /
|