This repository has been archived on 2022-10-07. You can view files and clone it, but cannot push or open issues or pull requests.
skynet-webportal/packages/website/Dockerfile

38 lines
956 B
Docker

# builder stage - use debian base image to avoid needing to install missing packages
FROM node:16.14.2-bullseye as builder
WORKDIR /usr/app
# disable gatsby telemetry and installing cypress binary
ENV GATSBY_TELEMETRY_DISABLED 1
ENV CYPRESS_INSTALL_BINARY 0
COPY packages/website/package.json \
packages/website/yarn.lock \
./
RUN yarn --frozen-lockfile
COPY packages/website/data ./data
COPY packages/website/src ./src
COPY packages/website/static ./static
COPY packages/website/gatsby-*.js \
packages/website/postcss.config.js \
packages/website/tailwind.config.js \
./
RUN yarn build
# main stage - use alpine base image to minimise the resulting image footprint
FROM node:16.14.2-alpine
WORKDIR /usr/app
# install http server for serving website files
RUN npm install --global http-server@14.1.0
COPY --from=builder /usr/app/public /usr/app/public
EXPOSE 9000
CMD ["http-server", "/usr/app/public", "-s", "-p 9000"]