You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

48 lines
1.2 KiB

version: '3.8'
services:
# Next.js 应用服务
marketing-site:
build:
context: .
dockerfile: Dockerfile
environment:
- NODE_ENV=production
restart: unless-stopped
container_name: marketing-site-https
networks:
- marketing-network
# 不直接暴露端口,通过 nginx 反向代理访问
# Nginx 反向代理服务
nginx:
image: nginx:alpine
container_name: nginx-https
restart: unless-stopped
ports:
# 使用标准端口 80 和 443
# 如果本地 nginx 正在运行,需要先停止本地 nginx 服务
# 或者将以下端口改为其他端口(如 "8080:80" "8443:443")
- "80:80"
- "443:443"
volumes:
# Nginx 配置文件
- ./nginx/nginx.conf:/etc/nginx/nginx.conf:ro
# 挂载外部 SSL 证书
- /home/owen/ssl_key/smartsensiguard.cn.pem:/etc/nginx/ssl/smartsensiguard.cn.pem:ro
- /home/owen/ssl_key/smartsensiguard.cn.key:/etc/nginx/ssl/smartsensiguard.cn.key:ro
# Nginx 日志
- nginx-logs:/var/log/nginx
depends_on:
- marketing-site
networks:
- marketing-network
networks:
marketing-network:
driver: bridge
volumes:
nginx-logs:
driver: local