# DevOps
# cicd
# jenkins
# Windows Docker 安装 Jenkins
- Windows在命令行下执行如下命令
docker run ^
-u root ^
-d ^
-p 8080:8080 ^
-p 50000:50000 ^
-v jenkins-data:/var/jenkins_home ^
-v /var/run/docker.sock:/var/run/docker.sock ^
jenkinsci/blueocean
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
- 在浏览器下面输入设置的端口(上面映射的是8080端口,因此本地输入 localhost:8080,看到如下页面
- 在docker中Jenkins的命令行中输入以下命令
/ # cat /var/jenkins_home/secrets/initialAdminPassword
# 96759353a2354c199e0f0d2367c0348d 这里就是密钥
1
2
2
- 将密钥输入上面的输入框中,看到以下界面
安装推荐的插件(Jenkinsci/blueocean里面集成了java的环境,因此这里直接可以减少配置
创建一个管理员用户
重启Jenkins
重新登录进入系统
创建一个任务(选择一个自由风格
在源代码管理中添加git的仓库(我使用的是码云
设置触发条件
H/2 * * * *
是每隔2分钟触发一次
设置构建环境
构建 选择构建环境
在命令里面增加以下脚本
#!/bin/bash
# 获取短版本号
# projectname替换为自己的项目
GITHASH=`git rev-parse --short HEAD`
echo ---------------Remove-Orphans------------------
docker-compose -f ./docker-compose.yml -f ./docker-compose.override.yml -p projectname down --rmi local --remove-orphans
echo ------------------Config-----------------------
docker-compose -f ./docker-compose.ci.build.yml -p projectname config
echo ------------------Build------------------------
docker-compose -f ./docker-compose.ci.build.yml -p Jenkins.Demo up --build
echo ---------------Publishing...------------------
docker-compose -f "./docker-compose.yml" -f "./docker-compose.override.yml" -p projectname up -d --build
echo ---------------Clear-Images...------------------
clearImagesList=$(docker images -f "dangling=true" -q)
if [ ! -n "$clearImagesList" ]; then
echo "No need to clean up images."
else
docker rmi $(docker images -f "dangling=true" -q)
echo "clear success."
fi
echo ---------------Clear-Containers...------------------
# docker rm projectname_ci-build_1 #删除当前运行的容器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
保存后回到工作区,选择立即构建
点击立即构建会出现下面的构建历史
在项目中提交后,重新构建(使用blueocean查看
项目构建成功(但是缺少docker-compose,需要安装-Windows版本的docker中含有,Linux需要自己安装