Ich wollte Node.js auf einem Image installieren, das ich an anderer Stelle erstellt hatte, aber es kam nicht sofort nach dem Überprüfen heraus, also ein Memo
Ich musste versuchen, Wasm mit Rust zu berühren. Verwendet einen Buster-basierten Container.
Fügte dies hinzu
ENV NODE_VERSION 15.0.1
RUN ARCH= && dpkgArch="$(dpkg --print-architecture)" \
&& case "${dpkgArch##*-}" in \
amd64) ARCH='x64';; \
ppc64el) ARCH='ppc64le';; \
s390x) ARCH='s390x';; \
arm64) ARCH='arm64';; \
armhf) ARCH='armv7l';; \
i386) ARCH='x86';; \
*) echo "unsupported architecture"; exit 1 ;; \
esac \
&& set -ex \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" \
&& tar -xJf "node-v$NODE_VERSION-linux-$ARCH.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
&& rm "node-v$NODE_VERSION-linux-$ARCH.tar.xz" \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs \
&& node --version \
&& npm --version
Was mache ich Holen Sie sich Architektur Klicken Sie auf der offiziellen Website auf url Einsatz
Version im Protokoll angezeigt
+ node --version
v15.0.1
+ npm --version
7.0.3
Zuerst habe ich es mit apt installiert, aber die Version ist alt (ich erinnere mich, dass es ungefähr 10 war), also habe ich darüber nachgedacht, es zu aktualisieren. Ich konnte jedoch die "richtige" Methode nicht finden, selbst nachdem ich richtig gesucht hatte, und ging zu Docker Hub. https://hub.docker.com/_/node
Wechseln Sie von hier aus zu DockerFile, einem Image, das auf einem Betriebssystem (diesmal Buster) basiert, das dem von Ihnen verwendeten ähnelt. Extrahieren Sie von dort den Teil, auf dem der Knoten installiert ist, und wenden Sie ihn auf Ihre Docker-Datei an. (Eigentlich gab es eine Prüfsumme oder so, aber ich habe sie gelöscht)
Es hat hervorragend funktioniert. das ist alles.
https://hub.docker.com/_/node https://github.com/nodejs/docker-node/blob/d58d7e65c4f92ef22a190b0ca835ce62464ff3ba/15/buster/Dockerfile