docker setup

This commit is contained in:
Oleksandr Honcharov 2024-06-08 19:08:41 +03:00
parent 1fdb8f451b
commit f028f3d708
2 changed files with 17 additions and 9 deletions

View File

@ -1,5 +1,9 @@
## build runner ## build runner
FROM node:lts-alpine as build-runner FROM node:20-slim as build-runner
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
# Set temp directory # Set temp directory
WORKDIR /tmp/app WORKDIR /tmp/app
@ -8,17 +12,22 @@ WORKDIR /tmp/app
COPY package.json . COPY package.json .
# Install dependencies # Install dependencies
RUN npm install RUN pnpm install
# Move source files # Move source files
COPY src ./src COPY src ./src
COPY tsconfig.json . COPY tsconfig.json .
COPY tsup.config.ts .
# Build project # Build project
RUN npm run build RUN pnpm build
## production runner ## production runner
FROM node:lts-alpine as prod-runner FROM node:20-slim as prod-runner
ENV PNPM_HOME="/pnpm"
ENV PATH="$PNPM_HOME:$PATH"
RUN corepack enable
# Set work directory # Set work directory
WORKDIR /app WORKDIR /app
@ -27,10 +36,10 @@ WORKDIR /app
COPY --from=build-runner /tmp/app/package.json /app/package.json COPY --from=build-runner /tmp/app/package.json /app/package.json
# Install dependencies # Install dependencies
RUN npm install --omit=dev RUN pnpm install --prod
# Move build files # Move build files
COPY --from=build-runner /tmp/app/build /app/build COPY --from=build-runner /tmp/app/build /app/build
# Start bot # Start bot
CMD [ "npm", "run", "start" ] CMD [ "pnpm", "start" ]

View File

@ -1,7 +1,6 @@
version: "3"
services: services:
app: app:
build: . build: .
command: node build/main.js command: node build/index.mjs
environment: environment:
- BOT_TOKEN=${BOT_TOKEN} - BOT_TOKEN=${BOT_TOKEN}