feat jenkins 部署1

This commit is contained in:
2026-01-01 11:16:37 +08:00
parent 01621ec237
commit 2931970f36

View File

@@ -13,8 +13,7 @@ pipeline {
// 部署目标服务器 // 部署目标服务器
SERVER_HOST = 'www.hlsq.asia' SERVER_HOST = 'www.hlsq.asia'
SERVER_USER = 'root' SERVER_USER = 'root'
REMOTE_DIR = '/opt/apps' SSH_CREDENTIALS_ID = '10e0830d-4d03-4879-9ee4-03a4c55513ad'
SSH_CREDENTIALS_ID = 'server-ssh-key'
// 基础信息 // 基础信息
APP_NAME = 'server-gateway' APP_NAME = 'server-gateway'
@@ -94,38 +93,40 @@ pipeline {
} }
} }
// stage('Deploy to Server') { stage('Deploy to Server') {
// steps { agent any
// script { steps {
// echo "Deploying image: ${IMAGE_TAG} to ${env.SERVER_HOST}" script {
// withCredentials([
// sshagent (credentials: [env.SSH_CREDENTIALS_ID]) { usernamePassword(
// sh """ credentialsId: env.REGISTRY_CREDENTIALS_ID,
// ssh ${env.SERVER_USER}@${env.SERVER_HOST} << 'EOF' usernameVariable: 'DOCKER_USER',
// # 登录私有 registry使用 Jenkins 注入的凭据) passwordVariable: 'DOCKER_PASS'
// echo "$REGISTRY_PASS" | docker login ${env.REGISTRY} --username "$REGISTRY_USER" --password-stdin )
// ]) {
// # 拉取最新镜像 sshagent (credentials: [env.SSH_CREDENTIALS_ID]) {
// docker pull ${IMAGE_TAG} sh """
// ssh -o StrictHostKeyChecking=no ${env.SERVER_USER}@${env.SERVER_HOST} << EOF
// # 停止并删除旧容器(如果存在) set -e
// docker stop ${env.APP_NAME} 2>/dev/null || true echo '${DOCKER_PASS}' | docker login --username '${DOCKER_USER}' --password-stdin ${env.REGISTRY_URL}
// docker rm ${env.APP_NAME} 2>/dev/null || true docker pull ${env.IMAGE_TAG}
// docker stop ${env.APP_NAME} 2>/dev/null || true
// # 启动新容器(根据你的需求调整端口、环境变量等) docker rm ${env.APP_NAME} 2>/dev/null || true
// docker run -d \\ docker run -d \\
// --name ${env.APP_NAME} \\ --name ${env.APP_NAME} \\
// --restart unless-stopped \\ --restart unless-stopped \\
// -p 8080:8080 \\ -p 8500-8504:8500-8504 \\
// ${IMAGE_TAG} --env XH_G_ENV=prod \\
// -v /root/server/logs/gateway_log/:/app/logs \\
// # 可选:登出 registry ${env.IMAGE_TAG}
// docker logout ${env.REGISTRY} docker logout ${env.REGISTRY_URL}
// """ EOF
// } """
// } }
// } }
// } }
}
}
} }
post { post {