From 9e36a843546cab7c0cadba9fe26e8da9b7629bdd Mon Sep 17 00:00:00 2001 From: 86156 <823267011@qq.com> Date: Tue, 30 Sep 2025 20:56:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=A5=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 12 +++--------- rtsp-vue/Dockerfile | 12 ++++-------- rtsp-vue/nginx.conf | 5 +++-- 3 files changed, 10 insertions(+), 19 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 68cd7bc..2e48f1a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -73,25 +73,19 @@ services: BACKEND_API_URL: http://localhost:${BACKEND_PORT} container_name: rtsp-frontend restart: always - ports: - - "${FRONTEND_PORT}:80" + network_mode: "host" depends_on: backend: condition: service_healthy environment: TZ: ${TZ} - networks: - - rtsp-network + NGINX_PORT: ${FRONTEND_PORT} healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:80"] + test: ["CMD", "curl", "-f", "http://localhost:${FRONTEND_PORT}"] interval: 30s timeout: 10s retries: 3 -networks: - rtsp-network: - driver: bridge - volumes: redis-data: backend-logs: diff --git a/rtsp-vue/Dockerfile b/rtsp-vue/Dockerfile index 3ff71ae..6e3327a 100644 --- a/rtsp-vue/Dockerfile +++ b/rtsp-vue/Dockerfile @@ -22,8 +22,8 @@ RUN npm run build:prod # 运行阶段 FROM nginx:1.25-alpine -# 安装curl用于健康检查 -RUN apk add --no-cache curl +# 安装curl和envsubst用于健康检查和环境变量替换 +RUN apk add --no-cache curl gettext # 删除默认nginx配置 RUN rm -rf /etc/nginx/conf.d/* @@ -37,9 +37,5 @@ COPY --from=builder /app/dist /usr/share/nginx/html # 暴露端口 EXPOSE 80 -# 健康检查 -HEALTHCHECK --interval=30s --timeout=10s --retries=3 \ - CMD curl -f http://localhost:80 || exit 1 - -# 启动Nginx -CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file +# 使用envsubst替换环境变量,然后启动Nginx +CMD sh -c "envsubst '\$NGINX_PORT' < /etc/nginx/conf.d/default.conf > /tmp/nginx.conf && mv /tmp/nginx.conf /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'" \ No newline at end of file diff --git a/rtsp-vue/nginx.conf b/rtsp-vue/nginx.conf index 6d51f73..bdad6df 100644 --- a/rtsp-vue/nginx.conf +++ b/rtsp-vue/nginx.conf @@ -1,6 +1,7 @@ server { - listen 80; - server_name localhost; + listen ${NGINX_PORT} default_server; + listen [::]:${NGINX_PORT} default_server; + server_name _; # 前端资源 location / {