Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
H
hrsystem
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
hrsystem
Commits
aea0a394
Commit
aea0a394
authored
Apr 02, 2026
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update backend/Dockerfile via Son of Anton
parent
ff8e9c0d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
30 additions
and
27 deletions
+30
-27
Dockerfile
backend/Dockerfile
+30
-27
No files found.
backend/Dockerfile
View file @
aea0a394
FROM
node:20-alpine AS base
RUN
apk add
--no-cache
libc6-compat openssl
FROM
node:20-alpine AS builder
# Install dependencies
FROM
base AS deps
WORKDIR
/app
COPY
package.json ./
RUN
npm
install
--legacy-peer-deps
RUN
apk add
--no-cache
libc6-compat openssl python3 make g++
WORKDIR
/build
# Copy the prisma schema
COPY
prisma/ ./prisma/
# Copy shared types
FROM
base AS shared
WORKDIR
/shared
COPY
../shared/package.json ./
COPY
../shared/src ./src
COPY
../shared/tsconfig.json ./
# Build
FROM
base AS builder
WORKDIR
/app
COPY
--from=deps /app/node_modules ./node_modules
COPY
. .
COPY
--from=shared /shared ../shared
COPY
shared/ ./shared/
# Copy backend
COPY
backend/package*.json ./backend/
WORKDIR
/build/backend
RUN
npm
install
--legacy-peer-deps
COPY
backend/ ./
# Copy prisma into backend for generation
RUN
cp
-r
/build/prisma ./prisma
# Generate Prisma client
COPY
../prisma ./prisma
RUN
npx prisma generate
--schema
=
./prisma/schema.prisma
# Build NestJS
RUN
npm run build
# Production
FROM
base AS runner
# --- Production ---
FROM
node:20-alpine
RUN
apk add
--no-cache
libc6-compat openssl
WORKDIR
/app
ENV
NODE_ENV=production
COPY
--from=builder /
app
/dist ./dist
COPY
--from=builder /
app
/node_modules ./node_modules
COPY
--from=builder /
app
/prisma ./prisma
COPY
--from=builder /
app/package.json ./
COPY
--from=builder /
build/backend
/dist ./dist
COPY
--from=builder /
build/backend
/node_modules ./node_modules
COPY
--from=builder /
build/backend
/prisma ./prisma
COPY
--from=builder /
build/backend/package.json ./package.json
EXPOSE
3001
CMD
["sh", "-c", "npx prisma migrate deploy --schema=./prisma/schema.prisma && node dist/main.js"]
\ No newline at end of file
CMD
["sh", "-c", "npx prisma migrate deploy --schema=./prisma/schema.prisma 2>/dev/null; node dist/main.js"]
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment