Add dual environment deployment: main->prod, develop->test
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
111
2026-01-23 14:12:35 +08:00
parent c274e5a23b
commit b675a51fd2

View File

@@ -30,8 +30,8 @@ steps:
- docker build -t ai-interview-frontend:${DRONE_COMMIT_SHA:0:8} -f deploy/Dockerfile.frontend . - docker build -t ai-interview-frontend:${DRONE_COMMIT_SHA:0:8} -f deploy/Dockerfile.frontend .
- docker tag ai-interview-frontend:${DRONE_COMMIT_SHA:0:8} ai-interview-frontend:latest - docker tag ai-interview-frontend:${DRONE_COMMIT_SHA:0:8} ai-interview-frontend:latest
# 部署到服务器 # 部署到测试环境 (develop 分支)
- name: deploy - name: deploy-test
image: docker:dind image: docker:dind
volumes: volumes:
- name: docker-sock - name: docker-sock
@@ -50,10 +50,38 @@ steps:
FILE_SERVER_TOKEN: FILE_SERVER_TOKEN:
from_secret: file_server_token from_secret: file_server_token
commands: commands:
- docker stop ai-interview-backend ai-interview-frontend || true - docker stop ai-interview-backend-test ai-interview-frontend-test || true
- docker rm ai-interview-backend ai-interview-frontend || true - docker rm ai-interview-backend-test ai-interview-frontend-test || true
- docker run -d --name ai-interview-backend -p 8000:8000 --restart unless-stopped -e COZE_PAT_TOKEN=$COZE_PAT_TOKEN -e COZE_BOT_ID=$COZE_BOT_ID -e COZE_WORKFLOW_A_ID=$COZE_WORKFLOW_A_ID -e COZE_WORKFLOW_C_ID=$COZE_WORKFLOW_C_ID -e FILE_SERVER_URL=$FILE_SERVER_URL -e FILE_SERVER_TOKEN=$FILE_SERVER_TOKEN ai-interview-backend:latest - docker run -d --name ai-interview-backend-test -p 8000:8000 --restart unless-stopped -e COZE_PAT_TOKEN=$COZE_PAT_TOKEN -e COZE_BOT_ID=$COZE_BOT_ID -e COZE_WORKFLOW_A_ID=$COZE_WORKFLOW_A_ID -e COZE_WORKFLOW_C_ID=$COZE_WORKFLOW_C_ID -e FILE_SERVER_URL=$FILE_SERVER_URL -e FILE_SERVER_TOKEN=$FILE_SERVER_TOKEN ai-interview-backend:latest
- docker run -d --name ai-interview-frontend -p 3000:80 --restart unless-stopped ai-interview-frontend:latest - docker run -d --name ai-interview-frontend-test -p 3000:80 --restart unless-stopped ai-interview-frontend:latest
when:
branch:
- develop
# 部署到正式环境 (main 分支)
- name: deploy-prod
image: docker:dind
volumes:
- name: docker-sock
path: /var/run/docker.sock
environment:
COZE_PAT_TOKEN:
from_secret: coze_pat_token
COZE_BOT_ID:
from_secret: coze_bot_id
COZE_WORKFLOW_A_ID:
from_secret: coze_workflow_a_id
COZE_WORKFLOW_C_ID:
from_secret: coze_workflow_c_id
FILE_SERVER_URL:
from_secret: file_server_url
FILE_SERVER_TOKEN:
from_secret: file_server_token
commands:
- docker stop ai-interview-backend-prod ai-interview-frontend-prod || true
- docker rm ai-interview-backend-prod ai-interview-frontend-prod || true
- docker run -d --name ai-interview-backend-prod -p 9000:8000 --restart unless-stopped -e COZE_PAT_TOKEN=$COZE_PAT_TOKEN -e COZE_BOT_ID=$COZE_BOT_ID -e COZE_WORKFLOW_A_ID=$COZE_WORKFLOW_A_ID -e COZE_WORKFLOW_C_ID=$COZE_WORKFLOW_C_ID -e FILE_SERVER_URL=$FILE_SERVER_URL -e FILE_SERVER_TOKEN=$FILE_SERVER_TOKEN ai-interview-backend:latest
- docker run -d --name ai-interview-frontend-prod -p 4000:80 --restart unless-stopped ai-interview-frontend:latest
when: when:
branch: branch:
- main - main