1
- FROM debian:bullseye -slim
1
+ FROM node:22-bookworm -slim
2
2
3
- # # Installing Node.js
4
- ENV NODE_ENV=production
5
- ENV NODE_VERSION=14.21.3
3
+ ENV DENO_VERSION=1.37.1
6
4
7
- # Node installation based on https://github.com/nodejs/docker-node/blob/66b46292a6e5dd5856b1d5204dc51547c80eb17a/12/buster-slim/Dockerfile
8
- RUN ARCH="x64" \
9
- && set -eux \
10
- && apt-get update && apt-get install -y --no-install-recommends ca-certificates curl wget gnupg dirmngr xz-utils \
11
- && rm -rf /var/lib/apt/lists/* \
12
- && for key in \
13
- 4ED778F539E3634C779C87C6D7062848A1AB005C \
14
- 94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
15
- 74F12602B6F1C4E913FAA37AD3A89613643B6201 \
16
- 71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
17
- 8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
18
- C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
19
- C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C \
20
- DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
21
- A48C2BEE680E841632CD4E44F07496B3EB3C1762 \
22
- 108F52B48DB57BB0CC439B2997B01419BD92F80A \
23
- B9E2F5981AA6E0CD28160D9FF13993A75599653C \
24
- ; do \
25
- gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$key" || \
26
- gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key" ; \
27
- done \
28
- && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" \
29
- && curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
30
- && gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
31
- && grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$ " SHASUMS256.txt | sha256sum -c - \
32
- && tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
33
- && rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt \
5
+ RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \
6
+ && case "${dpkgArch##*-}" in \
7
+ amd64) ARCH='x86_64' ;; \
8
+ arm64) ARCH='aarch64' ;; \
9
+ *) echo "unsupported Deno architecture" ; exit 1 ;; \
10
+ esac \
11
+ && set -ex \
12
+ && apt-get update && apt-get install -y --no-install-recommends ca-certificates curl unzip && rm -rf /var/lib/apt/lists/* \
13
+ && curl -fsSL https://dl.deno.land/release/v${DENO_VERSION}/deno-${ARCH}-unknown-linux-gnu.zip --output /tmp/deno-${ARCH}-unknown-linux-gnu.zip \
14
+ && echo "3ebb3c234c4ea5d914eb394af340e08ae0787e95ca8ec2c58b869752760faa00 /tmp/deno-x86_64-unknown-linux-gnu.zip" | sha256sum -c - \
15
+ && unzip /tmp/deno-${ARCH}-unknown-linux-gnu.zip -d /tmp \
16
+ && rm /tmp/deno-${ARCH}-unknown-linux-gnu.zip \
17
+ && chmod 755 /tmp/deno \
18
+ && mv /tmp/deno /usr/local/bin/deno \
34
19
&& apt-mark auto '.*' > /dev/null \
35
20
&& find /usr/local -type f -executable -exec ldd '{}' ';' \
36
21
| awk '/=>/ { print $(NF-1) }' \
@@ -50,7 +35,9 @@ VOLUME /app/uploads
50
35
51
36
WORKDIR /app
52
37
53
- ENV RC_VERSION=6.11.3
38
+ ENV NODE_ENV=production
39
+
40
+ ENV RC_VERSION=7.4.0
54
41
55
42
RUN set -eux \
56
43
&& apt-get update \
0 commit comments