用多阶段构建把 Nuxt 静态产物交给 nginx 托管,对外暴露 2229 端口。 nginx 配置覆盖 SPA 路由回退与静态资源缓存策略,构建上下文用 .dockerignore 排除依赖与产物。
24 lines
833 B
YAML
24 lines
833 B
YAML
services:
|
|
cook:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
args:
|
|
# 统计配置在构建期编译进静态产物,未设置时使用项目默认值
|
|
NUXT_PUBLIC_CLARITY_PROJECT_ID: ${NUXT_PUBLIC_CLARITY_PROJECT_ID:-ks1ebw03i5}
|
|
NUXT_PUBLIC_CLARITY_DOMAINS: ${NUXT_PUBLIC_CLARITY_DOMAINS:-cook.yunyoujun.cn,cook.yunle.fun}
|
|
# 可选:传入 git commit,页脚会显示版本号与提交
|
|
CF_PAGES_COMMIT_SHA: ${CF_PAGES_COMMIT_SHA:-}
|
|
image: cook-web:latest
|
|
container_name: cook-web
|
|
restart: unless-stopped
|
|
ports:
|
|
# 容器内 nginx 监听 2229,对外同样暴露 2229
|
|
- '2229:2229'
|
|
healthcheck:
|
|
test: [CMD, wget, -q, -O, /dev/null, http://127.0.0.1:2229/]
|
|
interval: 30s
|
|
timeout: 3s
|
|
start_period: 5s
|
|
retries: 3
|