1.拉取对应的Jenkins镜像
docker pull jenkins/jenkins:2.207-centos
2.创建存放Jenkins文件并赋予权限
mkdir /data/zjb/jenkins
ls -nd /data/zjb/jenkins
chown -R 1000:1000 /data/zjb/jenkins
ps:目录自定义
3.使用run命令打开进程
docker run -itd -p 9099:8080 -p 50000:50000 \
--name jenkin \
--privileged=true \
--restart=always \
-v /data/zjb/jenkins:/var/jenkins_home \
-v /etc/localtime:/etc/localtime \
-v /etc/timezone:/etc/timezone \
jenkins/jenkins:2.207-centos
ps:
-p 9099:8080 把8080端口映射到9099(可自定义)
--name参数给进程命名(方便后续操作)
--privileged=true 使container内的root拥有真正的root权限
--restart=always 使进程开机自启动
-v /data/zjb/jenkins:/var/jenkins_home 将宿主机的/data/zjb/jenkins挂载到镜像里的/var/jenkins_home目录,实现jenkins持久化
-v /etc/localtime:/etc/localtime 将容器内时间修改为与宿主机一样的时间(本意是修改Jenkins的时间)
-v /etc/timezone:/etc/timezone 将jenkins的时间与设置为宿主机时间一致 (jenkins自动从/etc/timezone获取参数。没有这个文件就默认为UTC)
jenkins/jenkins:2.207-centos 采用的jenkins镜像(可变)
4.查看Jenkins初始登录密码
方法①:进入Jenkins容器然后执行命令cat /var/jenkins_home/secrets/initialAdminPassword(根据前面自己创建目录)
方法②:docker logs jenkins (查看日志,里面有记录jenkins初始密码)
Jenkins更改密码后包含初始密码的文件就会删除!!!!!!!!!!(确保没有更改过密码,不然一切都是徒劳)
5.打开浏览器宿主机ip地址+:9090(根据前面映射端口),输入密码进入jenkins
6.安装推荐插件即可
7.进入jenkins首页-->系统管理→全局工具配置(Global Tool Configuration)!配置JDK以及Git环境
其中JAVA_HOME以及PATH to Git executable用的是docker创建的容器里面的地址
进入容器可使用docker exec -it jenkins bash
进入容器里面查找JAVA_HOME以及PATH to Git executable对应路径
8.简单的demo测试
①Jenkins首页新建任务
②选择→构建一个自由风格的软件项目
③勾选 丢弃旧的构建 保持构建天数以及最大个数均填5即可
!④源码管理配置Git源码仓库
其中Repository URL对应的是源码仓库的地址(要有自己的源码仓库)
例如github中的
Credentials对应的是用户验证(即你从github获取代码需要的验证)
要先在宿主机生成公私钥
在jenkins所在服务器上面执行 ssh-keygen -t rsa -P '', -P后面两个单引号表示密码为空
之后会在/.ssh目录下创建两个文件id_rsa(私钥),id_rsa.pub(公钥)
在Jenkins里配置私钥,在github里配置公钥(网上有教程)
⑤最后在构建模块里增加构建步骤→执行shell
在github仓库中的READ.mda文件中输入一定内容
⑥最后点击应用
⑦到回到Jenkins首页点击自己刚创建的任务
⑧点击左方的-->立即构建→点击Build History里新生成的#n
⑨点击左方的→控制台输出
若出现如下页面
cat命令下方出现自己github仓库里READ.md里的内容
且下方提示SUCCESS则证明demo运行成功