diff options
author | Raphael Kabo <raphaelkabo@hey.com> | 2024-07-31 22:45:39 +0100 |
---|---|---|
committer | Raphael Kabo <raphaelkabo@hey.com> | 2024-08-01 00:25:04 +0100 |
commit | 2fbb753c1eb715b31034f5ce851f6abceaeb9309 (patch) | |
tree | 15a57f487cd94a13ce363164f3d9e1ff87626bc5 /Dockerfile | |
parent | 04b386b5eec06549c989ed81aaf2eb9b76e49b87 (diff) |
Add GitHub CI files to publish Docker container
Diffstat (limited to 'Dockerfile')
-rw-r--r-- | Dockerfile | 10 |
1 files changed, 9 insertions, 1 deletions
@@ -1,4 +1,6 @@ -FROM node:20-alpine +# Docker builds hang in arm/v7 images, so we use Node 18 to build and Node 20 to run +# Cf. https://github.com/docker/build-push-action/issues/1071 +FROM node:18-alpine AS BUILD_IMAGE WORKDIR /app RUN apk add --no-cache python3 build-base ADD package.json pnpm-lock.yaml /app/ @@ -8,4 +10,10 @@ COPY . /app/ # Always exit 0 here because TSC will fail while we're migrating to TypeScript but # not everything uses TypeScript RUN pnpm run build; exit 0 + +# Now we run the app +FROM node:20-alpine +ENV NODE_ENV=production +WORKDIR /app +COPY --from=BUILD_IMAGE /app ./ CMD ["node", "dist/start.js"] |