+76
Diff
round #1
+7
.dockerignore
+7
.dockerignore
+16
Dockerfile.api
+16
Dockerfile.api
···
1
+
FROM oven/bun:1
2
+
3
+
WORKDIR /app
4
+
5
+
COPY package.json bun.lock ./
6
+
COPY apps/api/package.json apps/api/package.json
7
+
COPY apps/web/package.json apps/web/package.json
8
+
RUN bun install
9
+
10
+
COPY . .
11
+
12
+
WORKDIR /app/apps/api
13
+
14
+
EXPOSE 3001
15
+
16
+
CMD ["bun", "src/index.ts"]
+19
Dockerfile.web
+19
Dockerfile.web
···
1
+
FROM oven/bun:1 AS build
2
+
3
+
WORKDIR /app
4
+
5
+
COPY package.json bun.lock ./
6
+
COPY apps/api/package.json apps/api/package.json
7
+
COPY apps/web/package.json apps/web/package.json
8
+
RUN bun install
9
+
10
+
COPY . .
11
+
12
+
RUN bun run build
13
+
14
+
FROM nginx:alpine
15
+
16
+
COPY docker/nginx-web.conf /etc/nginx/conf.d/default.conf
17
+
COPY --from=build /app/apps/web/dist /usr/share/nginx/html
18
+
19
+
EXPOSE 80
+23
compose.yaml
+23
compose.yaml
···
1
+
services:
2
+
api:
3
+
build:
4
+
context: .
5
+
dockerfile: Dockerfile.api
6
+
restart: unless-stopped
7
+
env_file:
8
+
- ./apps/api/.env
9
+
volumes:
10
+
- cai_data:/data
11
+
ports:
12
+
- "127.0.0.1:4002:3001"
13
+
14
+
web:
15
+
build:
16
+
context: .
17
+
dockerfile: Dockerfile.web
18
+
restart: unless-stopped
19
+
ports:
20
+
- "127.0.0.1:4001:80"
21
+
22
+
volumes:
23
+
cai_data: