#首先拉取jenkins镜像
docker pull jenkins/jenkins
#以root身份运行镜像
docker run -d -uroot -p 9077:8080 -p 50000:50000 --name jenkins -v /var/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins
#通过ip加端口号进入jenkins 127.0.0.1:9077
#切换进入docker镜像
docker exec -it d1949b69ce49 bash
#编辑密码所在文件 获取密码
cat /var/jenkins_home/secrets/initialAdminPassword
安装推荐的插件
安装必备的插件,在jenkins插件中搜索
Generic Webhook Trigger
GitLab
#服务器安装expect
apt install expect
在jenkins搜索栏输入Manage搜索,选择系统管理
需要在Jenkins系统设置中取消勾选“Enable authentication for '/project' end-point”
新建一个jenkins任务,选择第一个
进入任务配置,构建触发器选择入下图所示
构建步骤输入以下脚本
#!/usr/bin/expect
#web服务器
spawn ssh root@127.0.0.1
expect {
"(yes/no*" {send "yes\r";exp_continue}
"password:" {send "pwd\r";exp_continue}
eof
}
expect "*]$"
send "su root\n"
expect "*password"
send "pwd\n"
expect "*]$"
send "cd /var/www/project\n"
expect "*]#"
send "git pull\n"
expect "*]#"
send "exit\n"
expect "*]#"
多台服务器配置多个脚本链接,保存
登录你的gitlab
添加插件