lasthourcloud/Dockerfile

45 lines
1.6 KiB
Docker
Raw Normal View History

2022-07-25 20:40:55 +00:00
FROM node:18-alpine3.16 as build
2022-02-10 14:47:44 +00:00
WORKDIR /app
2022-04-11 20:31:27 +00:00
RUN apk add --no-cache curl
2022-07-06 09:02:36 +00:00
RUN curl -sL https://unpkg.com/@pnpm/self-installer | node
2022-04-11 20:31:27 +00:00
2022-07-06 09:02:36 +00:00
COPY . .
2022-04-11 20:31:27 +00:00
RUN pnpm install
2022-07-06 09:02:36 +00:00
RUN pnpm build
2022-02-10 14:47:44 +00:00
2022-07-06 09:02:36 +00:00
# Production build
2022-07-25 20:40:55 +00:00
FROM node:18-alpine3.16
2022-04-01 12:25:55 +00:00
WORKDIR /app
2022-07-06 09:02:36 +00:00
ENV NODE_ENV production
ARG TARGETPLATFORM
2022-04-01 12:25:55 +00:00
ENV PRISMA_QUERY_ENGINE_BINARY=/app/prisma-engines/query-engine \
PRISMA_MIGRATION_ENGINE_BINARY=/app/prisma-engines/migration-engine \
PRISMA_INTROSPECTION_ENGINE_BINARY=/app/prisma-engines/introspection-engine \
PRISMA_FMT_BINARY=/app/prisma-engines/prisma-fmt \
PRISMA_CLI_QUERY_ENGINE_TYPE=binary \
PRISMA_CLIENT_ENGINE_TYPE=binary
2022-07-26 13:11:06 +00:00
COPY --from=coollabsio/prisma-engine:3.15 /prisma-engines/query-engine /prisma-engines/migration-engine /prisma-engines/introspection-engine /prisma-engines/prisma-fmt /app/prisma-engines/
2022-04-01 12:25:55 +00:00
2022-04-11 18:29:29 +00:00
RUN apk add --no-cache git git-lfs openssh-client curl jq cmake sqlite openssl
2022-07-06 09:02:36 +00:00
RUN curl -sL https://unpkg.com/@pnpm/self-installer | node
2022-02-10 14:47:44 +00:00
RUN mkdir -p ~/.docker/cli-plugins/
# https://download.docker.com/linux/static/stable/
2022-04-01 12:25:55 +00:00
RUN curl -SL https://cdn.coollabs.io/bin/$TARGETPLATFORM/docker-20.10.9 -o /usr/bin/docker
# https://github.com/docker/compose/releases
RUN curl -SL https://cdn.coollabs.io/bin/$TARGETPLATFORM/docker-compose-linux-2.7.0 -o ~/.docker/cli-plugins/docker-compose
2022-03-31 22:08:29 +00:00
RUN chmod +x ~/.docker/cli-plugins/docker-compose /usr/bin/docker
2022-02-10 14:47:44 +00:00
2022-07-06 09:02:36 +00:00
COPY --from=build /app/apps/api/build/ .
COPY --from=build /app/apps/ui/build/ ./public
COPY --from=build /app/apps/api/prisma/ ./prisma
COPY --from=build /app/apps/api/package.json .
COPY --from=build /app/docker-compose.yaml .
2022-04-11 20:31:27 +00:00
2022-07-06 09:02:36 +00:00
RUN pnpm install -p
2022-04-11 20:31:27 +00:00
2022-02-10 14:47:44 +00:00
EXPOSE 3000
2022-07-06 09:02:36 +00:00
CMD pnpm start