java_demo/jenkins-docker/deploy-jenkins.sh
wangtianqi 7b8bd55554 feat: 完善Jenkins流水线配置
主要更新:
- 使用SSH私钥认证替代用户名密码认证
- 配置deploy-server-ssh-key凭据ID
- 修复Jenkinsfile格式和缩进问题
- 添加SSH配置指南和企业级部署文档

 技术改进:
- 使用sshagent进行安全的SSH连接
- 移除sshpass依赖,提升安全性
- 统一使用root@116.62.163.84进行部署
- 优化Docker镜像传输和部署流程

 新增文档:
- SSH_CONFIG_GUIDE.md - SSH私钥配置指南
- ENTERPRISE_JENKINS_GUIDE.md - 企业级Jenkins部署
- jenkins-docker/ - Jenkins Docker化部署方案
2025-06-23 21:14:09 +08:00

83 lines
2.1 KiB
Bash
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
# Jenkins Docker部署脚本 - 支持JDK 17
# 使用方法: ./deploy-jenkins.sh
set -e
echo "🚀 开始部署Jenkins with JDK 17..."
# 检查Docker是否安装
if ! command -v docker &> /dev/null; then
echo "❌ Docker未安装请先安装Docker"
exit 1
fi
if ! command -v docker-compose &> /dev/null; then
echo "❌ Docker Compose未安装请先安装Docker Compose"
exit 1
fi
# 创建必要的目录
mkdir -p jenkins_data
mkdir -p jenkins-docker
echo "📁 创建Jenkins配置目录..."
# 设置权限
sudo chown -R 1000:1000 jenkins_data
echo "🐳 构建并启动Jenkins容器..."
# 进入jenkins-docker目录
cd jenkins-docker
# 构建并启动服务
docker-compose up -d --build
echo "⏳ 等待Jenkins启动..."
sleep 30
# 检查容器状态
echo "📊 检查容器状态..."
docker-compose ps
# 获取Jenkins初始密码
echo "🔑 获取Jenkins初始密码..."
if [ -f "../jenkins_data/secrets/initialAdminPassword" ]; then
echo "Jenkins初始密码:"
cat ../jenkins_data/secrets/initialAdminPassword
else
echo "等待Jenkins完全启动..."
sleep 60
if [ -f "../jenkins_data/secrets/initialAdminPassword" ]; then
echo "Jenkins初始密码:"
cat ../jenkins_data/secrets/initialAdminPassword
else
echo "从容器中获取密码:"
docker exec jenkins-custom cat /var/jenkins_home/secrets/initialAdminPassword 2>/dev/null || echo "密码文件还未生成,请稍后再试"
fi
fi
echo ""
echo "✅ Jenkins部署完成"
echo "🌐 访问地址: http://localhost:15008"
echo "🌐 如果是远程服务器: http://YOUR_SERVER_IP:15008"
echo ""
echo "📋 配置信息:"
echo " - Jenkins端口: 15008"
echo " - SonarQube端口: 15010"
echo " - 数据目录: ./jenkins_data"
echo ""
echo "🔧 接下来请:"
echo "1. 浏览器访问Jenkins"
echo "2. 使用上面的初始密码登录"
echo "3. 安装推荐插件"
echo "4. 创建管理员用户"
echo "5. 配置项目Pipeline"
# 显示容器日志
echo ""
echo "📄 Jenkins启动日志 (最后20行):"
docker logs --tail 20 jenkins-custom