记录---docker安装及配置jenkins全流程
🧑💻 写在开头
点赞 + 收藏 === 学会🤣🤣🤣
一、安装jenkins
1. 拉取jenkins镜像
docker pull jenkins/jenkins:lts
2. 创建在宿主机创建jenkins目录
1 2 | mkdir -p ~/jenkins_home sudo chown 1000:1000 ~/jenkins_home |
3. 创建docker-compose.yaml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | # 自定义网络模式 可以没有值 networks: jenkins: jenkins: # 指定服务使用的镜像 image: jenkins/jenkins:lts # 设置容器重启策略为始终重启 restart: always # 给予容器特权权限,允许进行Docker-in-Docker操作 privileged: true networks: - jenkins # 设置容器环境变量 environment: DOCKER_TLS_CERTDIR: /certs/client # 定义数据卷映射 volumes: - /usr/local/jenkins/jenkins-data/certs:/certs/client:ro # jenkins 数据目录 - ~/jenkins_home:/ var /jenkins_home # 私钥目录 - /root/jenkins/.ssh:/root/.ssh # 映射一个目录到宿主机指定目录,留作备份使用 - /usr/local/jenkinsBackup:/ var /jenkinsBackup # 定义端口映射 ports: - "8080:8080" - "50000:50000" # 设置容器运行用户为root,以便有足够权限操作Docker user: root |
4. 启动jenkins服务
docker-compose -p jenkins -f docker-compose.yaml up -d
这时候我们可以jenkins前端页面,通过浏览器访问地址http://主机IP:8080/ 我们可以看到这样一个界面
可以通过以下命令获取到密钥
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
填入界面之后,会进入下面这样的页面,安装插件,创建管理员账号,后面跟着界面操作就行了
二、环境配置
java sdk安装及配置
现在jenkins 依赖的java最低版本是java 17,安卓步骤如下
1 2 3 4 | docker exec -u root -it you-jenkins-names bash # 要改成对应jenkins 容器名称 apt update apt install -y openjdk-17-jdk java -version |
配置时,进入jenkins 全局工具管理界面,找到JDK部分,添加如下内容
publish over SSH 密钥配置
跨服务器部署时,需要配置SSH密钥
- 进入容器
1 2 | # 进入jenkins容器内部,注意改成您的容器名称 docker exec -u root -it jenkins bash |
- 生成密钥
1 | ssh -keygen -m PEM -t rsa -b 2048 |
这时候需要输入生成文件路径,默认即可,同时要输入密码,你个人输入的密钥要记住,后面配置要用。接下来就获取响应的密钥
1 2 3 4 | // 打印私钥 cat /root/ . ssh /id_rsa // 打印公钥 cat /root/ . ssh /id_rsa .pub |
- 把私钥配置到jenkins上面 在jenkins的# Configure System配置中配置如下
4. 配置目标服务器的authorized_keys Jenkins服务器拷贝id_rsa.pub文件的内容放到目标服务器vim /root/.ssh/authorized_keys文件中
密钥所有内容即配置好了
三、使用数据备份和迁移
- 数据备份 jenkins我们可以使用ThinBackup插件备份数据,安装好后配置如下。特别注意,Backup directory 备份路径要跟我们上面的yaml文件映射的文件路径对应。后续数据迁移和恢复用得上
- 数据迁移
我们从其他jenkins系统通过ThinBackup备份数据后,把数据拷贝到当前服务器jenkins的备份路径对应的宿主机路径文件夹中,通过本文上面的yaml文件可以看出,
务器jenkins系统界面中,进入ThinBackup 管理页面
入restore,选择我们迁移过来的对应备份,点击restore即可完成老系统所有数据的迁移。恢复备份过程中,系统会重启
到这里,整个jenkins系统就部署并迁移好了
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· 【全网最全教程】使用最强DeepSeekR1+联网的火山引擎,没有生成长度限制,DeepSeek本体
2020-12-09 uni-app开发经验分享十五: uni-app 蓝牙打印功能