Created
February 10, 2018 23:53
-
-
Save donmccurdy/c17740032a755fd7c8361f538d5d8a8c to your computer and use it in GitHub Desktop.
Docker image for node:8-xenial
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM buildpack-deps:xenial | |
RUN groupadd --gid 1000 node \ | |
&& useradd --uid 1000 --gid node --shell /bin/bash --create-home node | |
# gpg keys listed at https://github.com/nodejs/node#release-team | |
RUN set -ex \ | |
&& for key in \ | |
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \ | |
FD3A5288F042B6850C66B31F09FE44734EB7990E \ | |
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \ | |
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \ | |
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \ | |
B9AE9905FFD7803F25714661B63B535A4C206CA9 \ | |
56730D5401028683275BD23C23EFEFE93C4CFFFE \ | |
77984A986EBC2AA786BC0F66B01FBB92821C587A \ | |
; do \ | |
gpg --keyserver pgp.mit.edu --recv-keys "$key" || \ | |
gpg --keyserver keyserver.pgp.com --recv-keys "$key" || \ | |
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key" ; \ | |
done | |
ENV NODE_VERSION 8.9.4 | |
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 \ | |
&& curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH.tar.xz" \ | |
&& curl -SLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \ | |
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \ | |
&& grep " node-v$NODE_VERSION-linux-$ARCH.tar.xz\$" SHASUMS256.txt | sha256sum -c - \ | |
&& 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" SHASUMS256.txt.asc SHASUMS256.txt \ | |
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs | |
ENV YARN_VERSION 1.3.2 | |
RUN set -ex \ | |
&& for key in \ | |
6A010C5166006599AA17F08146C2130DFD2497F5 \ | |
; do \ | |
gpg --keyserver pgp.mit.edu --recv-keys "$key" || \ | |
gpg --keyserver keyserver.pgp.com --recv-keys "$key" || \ | |
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key" ; \ | |
done \ | |
&& curl -fSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" \ | |
&& curl -fSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" \ | |
&& gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \ | |
&& mkdir -p /opt/yarn \ | |
&& tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/yarn --strip-components=1 \ | |
&& ln -s /opt/yarn/bin/yarn /usr/local/bin/yarn \ | |
&& ln -s /opt/yarn/bin/yarn /usr/local/bin/yarnpkg \ | |
&& rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz | |
CMD [ "node" ] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment