Add CI/CD pipeline configuration for deployment

This commit is contained in:
xiaoliutral 2026-03-20 15:29:29 +08:00 committed by GitHub
parent 31f13dac73
commit 1128e2a484
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

41
.github/workflows/master.yml vendored Normal file
View File

@ -0,0 +1,41 @@
name: CI/CD Pipeline
on:
push:
branches:
- master # 监视的分支
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Build to Server
uses: appleboy/ssh-action@v0.1.5
with:
host: ${{ secrets.SSH_BUILD_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
script: |
mkdir -p /data/projects
cd /data/projects
git clone git@github.com:xiaoliutral/SimpleAdmin.Api.git
cd SimpleAdmin.Api
git pull origin master
docker build -t admin_api:latest -f src/SimpleAdmin.Api/Dockerfile .
# 标记镜像
docker tag admin_api:latest registry.nanafa.com/admin_api:latest
# 推送镜像
docker push registry.nanafa.com/admin_api:latest
- name: Deploy to Server
uses: appleboy/ssh-action@v0.1.5
with:
host: ${{ secrets.SSH_MANAGER_HOST }}
username: ${{ secrets.SSH_USERNAME }}
password: ${{ secrets.SSH_PASSWORD }}
script: |
cd /data
docker stack deploy -c api.yml api # yml没变化不会更新
docker service update --force --image registry.nanafa.com/admin_api:latest api_admin # 一定要和service name一致