diff --git a/Jenkinsfile b/Jenkinsfile index 99e942a..877a196 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -3,11 +3,6 @@ * * 架构:Jenkins 本地编译 → scp 镜像到目标机 → SSH 远程蓝绿切换 * 目标机目录:/opt/offerpie/web/ - * - * 内层 Nginx 职责: - * - 蓝绿切换(前端静态文件 serve) - * - /api/ 代理到 Java 后端(10202) - * - /ai-api/ 代理到 Python AI(10502),rewrite 去掉前缀 */ pipeline { agent any @@ -18,10 +13,10 @@ pipeline { environment { // 目标服务器配置 - DEPLOY_HOST = '8.138.180.255' + DEPLOY_HOST = '8.148.237.97' DEPLOY_PORT = '22' DEPLOY_USER = 'root' - DEPLOY_PASS = 'sh.0807.' + DEPLOY_PASS = 'Mzpy520@126.com' // 项目配置 IMAGE_NAME = 'offerpie-web' @@ -65,9 +60,7 @@ pipeline { echo "传输文件到目标服务器" sh "${SSH_CMD} 'mkdir -p ${REMOTE_DIR}'" sh "${SCP_CMD} ${IMAGE_NAME}.tar ${DEPLOY_USER}@${DEPLOY_HOST}:${REMOTE_DIR}/" - // 传输 proxy_nginx.conf(用 cat 写入保持 inode,避免 bind mount 失效) - sh "${SCP_CMD} proxy_nginx.conf ${DEPLOY_USER}@${DEPLOY_HOST}:${REMOTE_DIR}/proxy_nginx.conf.tmp" - sh "${SSH_CMD} 'cat ${REMOTE_DIR}/proxy_nginx.conf.tmp > ${REMOTE_DIR}/proxy_nginx.conf && rm -f ${REMOTE_DIR}/proxy_nginx.conf.tmp'" + sh "${SCP_CMD} proxy_nginx.conf ${DEPLOY_USER}@${DEPLOY_HOST}:${REMOTE_DIR}/proxy_nginx.conf" sh "${SCP_CMD} docker-compose.yml ${DEPLOY_USER}@${DEPLOY_HOST}:${REMOTE_DIR}/docker-compose.yml" } } @@ -133,6 +126,8 @@ pipeline { } echo "Nginx 容器已存在且运行中" } + // docker cp proxy_nginx.conf 进容器 + sh "${SSH_CMD} 'docker cp ${REMOTE_DIR}/proxy_nginx.conf ${CONTAINER_PREFIX}-nginx:/etc/nginx/nginx.conf'" } } } @@ -168,7 +163,7 @@ pipeline { stage('切换流量') { steps { script { - sh "${SSH_CMD} \"sed -i 's/proxy_pass http:\\/\\/\\(blue\\|green\\):80;/proxy_pass http:\\/\\/${env.DEPLOY_TARGET}:80;/' ${REMOTE_DIR}/proxy_nginx.conf\"" + sh "${SSH_CMD} 'docker exec ${CONTAINER_PREFIX}-nginx sed -i \"s/proxy_pass http:\\/\\/\\(blue\\|green\\):80;/proxy_pass http:\\/\\/${env.DEPLOY_TARGET}:80;/\" /etc/nginx/nginx.conf'" sh "${SSH_CMD} 'docker exec ${CONTAINER_PREFIX}-nginx nginx -s reload'" echo "✅ 流量已切换到 ${env.DEPLOY_TARGET}" } diff --git a/docker-compose.yml b/docker-compose.yml index c54b2ac..06a8516 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -5,8 +5,6 @@ services: restart: unless-stopped ports: - "10302:80" - volumes: - - ./proxy_nginx.conf:/etc/nginx/nginx.conf:ro healthcheck: test: ["CMD", "wget", "--spider", "-q", "http://localhost/health"] interval: 30s @@ -15,8 +13,8 @@ services: deploy: resources: limits: - memory: 128M - cpus: '0.25' + memory: 256M + cpus: '0.5' blue: image: offerpie-web:latest