安装docker
#yum安装docker
sudo yum install docker
#启动docker
service docker start
#设置docker开机启动
systemctl enable docker
#查看docker是否安装成功
docker info
#重启docker
sudo service docker restar
安装jenkins
#使用docker命令下载Jenkins
sudo docker pull jenkins/jenkins:lts
#创建jenkins文件夹
mkdir /var/jenkins
#进入/home/var/目录,设置jenkins文件夹归属用户UID为1000 cat /etc/passwd | grep home(用户名)
cd /var
sudo chown -R 1000:1000 jenkins/
#启动jenkins
sudo docker run -itd -p 8080:8080 -p 50000:50000 --name jenkins --privileged=true -v /var/jenkins_home/:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock -v /usr/local/jdk1.8/bin/java:/usr/local/jdk1.8/bin/java -v /usr/local/jdk1.8/:/usr/local/jdk1.8 -v /usr/local/maven/apache-maven-3.6.3/:/usr/local/maven/apache-maven-3.6.3 -v /var/jenkins_home/:/var/jenkins_home jenkins/jenkins:lts
#重启jenkins
docker restart jenkins
-d 表示以后台模式运行
--name 为容器定义一个名字(后面可以代替容器id使用)
-p 表示映射容器的端口到宿主机的端口
-v 表示映射宿主机的目录到容器的目录
-u root 使用root用户运行,避免后面出现的一些执行权限问题
-v /home/jenkins_home:/var/jenkins_home 映射jenkins_home,将数据存储到宿主机,这样配置就不会随容器丢失
-v /var/run/docker.sock:/var/run/docker.sock 与 -v /usr/bin/docker:/usr/bin/docker 把宿主机docker 映射到容器内,可以直接在容器内使用宿主机docker
-v /usr/lib/x86_64-linux-gnu/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \ 容器内docker运行需要的库文件
-v /opt:/opt \ 自主安装的一些运行时软件(如java/maven/git...)
-v /etc/timezone:/etc/timezone 映射时区文件,保证容器的时区和宿主机相同(官网的jenkins容器时区不是中国的时区)
最后的jenkins/jenkins:lts是要启动的镜像
运行jenkins
获取密码
访问:http://服务器IP或域名:8080/
sudo docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
定时构建语法
(五颗星,中间用空格隔开)
第一颗表示分钟,取值0~59
第二颗表示小时,取值0~23
第三颗表示一个月的第几天,取值1~31
第四颗表示第几月,取值1~12
第五颗*表示一周中的第几天,取值0~7,其中0和7代表的都是周日
1.每30分钟构建一次:
H/30 * * * *
2.每2个小时构建一次
H H/2 * * *
3.每天早上8点构建一次
0 8 * * *
4.每天的8点,12点,22点,一天构建3次
0 8,12,22 * * *