Skip to content

Instantly share code, notes, and snippets.

@tcolgate
Created February 26, 2019 14:56
Show Gist options
  • Save tcolgate/bc3b5b2d6a9e6111c51f33fadbcd6811 to your computer and use it in GitHub Desktop.
Save tcolgate/bc3b5b2d6a9e6111c51f33fadbcd6811 to your computer and use it in GitHub Desktop.
node container from source
FROM debian:stretch
COPY ./out/Release /opt/node
COPY ./deps/npm /opt/npm
RUN ln -s /opt/node/node /usr/local/bin/nodejs
RUN ln -s /opt/node/node /usr/local/bin/node
RUN groupadd --gid 1000 node \
&& useradd --uid 1000 --gid node --shell /bin/bash --create-home node
RUN apt-get update && apt-get install -y gpg curl tar make
RUN cd /opt/npm && make install
RUN ln -s /opt/bin/npm /usr/local/bin/npm
RUN ln -s /opt/bin/npx /usr/local/bin/npx
ENV YARN_VERSION 1.13.0
RUN set -ex \
&& for key in \
6A010C5166006599AA17F08146C2130DFD2497F5 \
; do \
gpg --batch --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" || \
gpg --batch --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
gpg --batch --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" \
&& curl -fsSLO --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 \
&& tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \
&& rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz
ENTRYPOINT ["/opt/node/node"]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment