部署:增加 docker-compose 与容器 nginx 配置,支持 docker 部署

This commit is contained in:
2025-08-23 17:15:00 +08:00
parent e24c5595a5
commit f43aa5e35f
3 changed files with 47 additions and 1 deletions

View File

@@ -7,6 +7,6 @@ RUN npm run build --prefix frontend
FROM nginx:stable-alpine
COPY --from=builder /app/frontend/dist /usr/share/nginx/html
COPY deploy/nginx/chat.conf /etc/nginx/conf.d/default.conf
COPY deploy/nginx/docker-chat.conf /etc/nginx/conf.d/default.conf
EXPOSE 8443
CMD ["nginx", "-g", "daemon off;"]

21
deploy/docker-compose.yml Normal file
View File

@@ -0,0 +1,21 @@
version: '3.8'
services:
backend:
build:
context: .
dockerfile: deploy/Dockerfile.backend
ports:
- "4000:4000"
restart: always
environment:
- NODE_ENV=production
frontend:
build:
context: .
dockerfile: deploy/Dockerfile.frontend
ports:
- "8443:8443"
restart: always
depends_on:
- backend

View File

@@ -0,0 +1,25 @@
server {
listen 8443;
server_name _;
root /usr/share/nginx/html;
index index.html;
location /api/ {
proxy_pass http://backend:4000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_buffering off;
chunked_transfer_encoding off;
}
location / {
try_files $uri $uri/ /index.html;
}
}