基础环境准备
1、先搭建Docker环境
# 链接里有详细的教程
http://t.csdnimg.cn/EJzi1
2、将代码上传到gitee(国内开源git仓库)
https://gitee.com/
使用docker拉取jenkins的镜像
# 注意可能需要一些时间
┌─[docker-node2]─[~]
└──╼ docker pull jenkins/jenkins
# 查看镜像是否已经拉取成功
┌─[docker-node2]─[~]
└──╼ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
jenkins/jenkins latest 3e31826a1bb1 5 days ago 469MB
#创建一个jenkins的数据目录
┌──[docker-node2]─[~]
└──╼ mkdir -p /jenkins/home
# 授权
┌─[docker-node2]─[~]
└──╼ chmod o+w /jenkins/home
创建容器
┌─[✗]─[docker-node2]─[~]
└──╼ docker run -tid --name=jenkins --hostname=jenkins \
> -v /jenkins/home/:/var/jenkins_home \ #将jenkins的数据目录映射到物理机的/jenkins/home下
> -p 9000:8080 -p 50000:50000 \
> --restart=always jenkins/jenkins
b042b0b40954e73b7146ca0d0448ea4c14e562d913e7eee7b0fa6c3d9e0e3d7c
┌─[docker-node2]─[~]
└──╼ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b042b0b40954 jenkins/jenkins "/usr/bin/tini -- /u…" 3 seconds ago Up 2 seconds 0.0.0.0:50000->50000/tcp, :::50000->50000/tcp, 0.0.0.0:9000->8080/tcp, :::9000->8080/tcp jenkins
通过网页访问192.168.7.17:9000端口
根据他的提示将密码复制到下面的文本框中
┌─[docker-node2]─[~]
└──? cat /jenkins/home/secrets/initialAdminPassword
# 将下面的管理员密码输入到网页的文本框中,然后登陆
bccd200a4ef04c3e9a9d18564f566042
可以选择jenkins推荐的插件安装,等待安装完成即可
点击安装推荐的插件:等待安装完
创建一个用户
安装插件:gitee maven integration publish over SSH
重复刚刚的操作 将这三个插件都安装完成
给Jenkins的那个容器配置一个JDK
# 将本地的jdk15解压到容器里
┌─[docker-node2]─[~]
└──╼ tar -xf jdk-15.0.2_linux-x64_bin.tar.gz -C /jenkins/home/
在jenkins中配置jdk插件
配置Maven(对java的jar或者war包进行编译)
配置Git 默认即可
配置System
先去Gitee上获取Token
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/c051d
测试连接 没问题
配置SSH
在要发布项目的机器上创建一个目录来存放war包
┌─[localhost]─[~]
└──? mkdir /a
┌─[localhost]─[~]
└──? chmod 777 -R /a
配置密钥
配置jenkins容器内部的ssh密钥 并发送给要推送的机器
┌─[docker-node2]─[~]
└──╼ docker exec -ti jenkins bash # 进入容器
jenkins@jenkins:/$ ssh-keygen # 创建密钥对
# 将公钥发送给要推送的机器上
jenkins@jenkins:/$ ssh-copy-id root@192.168.7.18
#然后将jenkins自己的私钥 放到jenkins上
jenkins@jenkins:~$ cd .ssh/
jenkins@jenkins:~/.ssh$ cat id_rsa
# 将私钥复制到Jenkins中
测试显示成功即可
开始构建一个持续集成以及持续交付的任务
添加凭据
构建触发器