Skip to content

Instantly share code, notes, and snippets.

@gajus

gajus/Dockerfile Secret

Created November 8, 2017 16:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gajus/3426d738dde10ce3c9a9bb39138578ea to your computer and use it in GitHub Desktop.
Save gajus/3426d738dde10ce3c9a9bb39138578ea to your computer and use it in GitHub Desktop.
FROM node:8.5
# Appear to be requirements for Google Chrome.
# Copied from https://github.com/zenato/docker-puppeteer/blob/master/Dockerfile
RUN apt-get update && \
apt-get install -yq \
gconf-service \
libasound2 \
libatk1.0-0 \
libc6 \
libcairo2 \
libcups2 \
libdbus-1-3 \
libexpat1 \
libfontconfig1 \
libgcc1 \
libgconf-2-4 \
libgdk-pixbuf2.0-0 \
libglib2.0-0 \
libgtk-3-0 \
libnspr4 \
libpango-1.0-0 \
libpangocairo-1.0-0 \
libstdc++6 \
libx11-6 \
libx11-xcb1 \
libxcb1 \
libxcomposite1 \
libxcursor1 \
libxdamage1 \
libxext6 \
libxfixes3 \
libxi6 \
libxrandr2 \
libxrender1 \
libxss1 \
libxtst6 \
ca-certificates \
fonts-liberation \
libappindicator1 \
libnss3 \
lsb-release \
xdg-utils \
wget && \
rm -r /var/lib/apt/lists/*
WORKDIR /srv
ENV \
NODE_ENV="production"\
PATH="./node_modules/.bin:${PATH}"\
NPM_CONFIG_DEPTH=0\
NPM_CONFIG_LOGLEVEL="warn"
COPY package.json /srv
ARG NPM_TOKEN
RUN echo '//registry.npmjs.org/:_authToken=${NPM_TOKEN}' > .npmrc && NODE_ENV=development npm install && rm -f .npmrc
COPY . /srv
RUN npm run test && npm run test-chrome && npm run build
CMD node ./dist/bin/server.js
EXPOSE 8000
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment