Docker教程---CD测试持续交付、持续部署
一、概述
1、拓扑图
2、安装Jenkins
虚拟机IP:10.0.0.31
创建docker-compose.yml文件
mkdir /opt/docker_jenkins
cd /opt/docker_jenkins
vim docker-compose.yml
version: "3.1"
services:
jenkins:
image: jenkins/jenkins
restart: always
container_name: jenkins
ports:
- 8888:8080
- 50000:50000
volumes:
- ./data:/var/jenkins_home
3、启动容器
docker-compose up -d
docker-compose logs -f 查看日志
chmod 777 data
docker-compose restart
4、浏览器测试访问jenkins:http://IP:8888
5、复制管理员密码,在浏览器输入
docker-compose logs -f 查看日志,安装成功,里面有管理员初始密码
6、进入安装插件页面,我们选择插件安装,勾选Git Parameter、Publish Over SSH两个插件安装。
7、进入安装页面,静静等待,安装完成,创建一个管理员
8、配置实例,jenkins路径为默认的,然后点击保存并完成。
9、配置目标服务器
Gitlab=》jenkins=》目标服务器
在目标服务器上创建两个后面需要用到的文件夹
mkdir /usr/local/jenkins/
mkdir /usr/local/tomcat/
点击Manage Jenkins设置,选择Configure System项
找到Publish Over SSH设置项,填写SSH Servers里面的Name、Hostname、Username、Remote Directory项
选中高级,勾选用密码指定,填写ssh密码,前面我们已将ssh的端口修改为60022,记得修改,填写的目标服务器目录记得创建,而后点击测试
测试通过,点击保存,目标服务器就指定好了。
10、Gitlab免密登录
登录jenkins容器内部
docker exec -it 22065548e13c bash
输入生成SSH密钥命令
ssh-keygen -t rsa -C "13@qq.com" 回车 回车 回车 exit ll -a cd .ssh/ cat id_rsa.pub
将密钥复制到Gitlab的SSH中
点击Gitlab用户名一栏,选择用户设置,点击SSH密钥,把公钥直接复制到key框里面,点击Add添加
二、Jenkins配置JDK和Maven
1、复制本地的jdk和maven的压缩包到data目录下
2、手动解压
tar -zxvf jdk-8u251-linux-x64.tar.gz tar -zxvf apache-maven-3.5.3-bin.tar.gz
3、在监控界面中配置jdk和maven
三、手动拉取gitlab项目
1、使用SSH无密码连接时,第一次连接需要手动确定
这一步主要要的就是yes的询问
四、创建maven任务
1、创建maven工程
复制下面的内容替换选中的内容
创建Git仓库
加入暂存区
推送至本地仓库
gitlab创建一个新的项目
复制gitlab的项目http链接,在ides链接时填入
2、Jenkins的监控页面中创建maven任务
创建一个任务
3、执行maven任务
看到控制台输出这个内容,表示成功了
这个就是我们要的war包