initial commit
This commit is contained in:
42
Dockerfile
Normal file
42
Dockerfile
Normal file
@@ -0,0 +1,42 @@
|
||||
FROM oven/bun:1 AS deps
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json bun.lockb ./
|
||||
COPY apps/backend/package.json apps/backend/
|
||||
COPY apps/frontend/package.json apps/frontend/
|
||||
COPY packages/common/package.json packages/common/
|
||||
|
||||
RUN bun install --frozen-lockfile
|
||||
|
||||
FROM deps AS frontend-build
|
||||
WORKDIR /app
|
||||
|
||||
COPY apps/frontend/ apps/frontend/
|
||||
COPY packages/common/ packages/common/
|
||||
|
||||
RUN bun run --cwd apps/frontend build
|
||||
|
||||
FROM deps AS backend-build
|
||||
WORKDIR /app
|
||||
|
||||
COPY apps/backend/ apps/backend/
|
||||
COPY packages/common/ packages/common/
|
||||
|
||||
RUN bun run --cwd apps/backend prisma:generate
|
||||
|
||||
FROM oven/bun:1 AS production
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=deps /app/package.json ./
|
||||
COPY --from=deps /app/node_modules ./node_modules
|
||||
COPY --from=backend-build /app/apps/backend ./apps/backend
|
||||
COPY --from=backend-build /app/packages/common ./packages/common
|
||||
COPY --from=frontend-build /app/apps/backend/web ./apps/backend/web
|
||||
|
||||
COPY apps/backend/docker-entrypoint.sh /usr/local/bin/
|
||||
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
|
||||
|
||||
EXPOSE 3000
|
||||
|
||||
ENTRYPOINT ["docker-entrypoint.sh"]
|
||||
CMD ["bun", "run", "apps/backend/src/index.ts"]
|
||||
Reference in New Issue
Block a user