Docker 搭建 Jenkins 容器 ,拉取git代码
一、安装jenkins
前提条件:宿主机安装docker
1、拉取镜像
docker pull jenkins/jenkins
2、查看镜像
docker images【列表中有jenkins/jenkins】
3、宿主机创建挂载文件夹,并且进行文件权限授予
#创建文件夹 mkdir -p /data/jenkins_home
#赋予权限 chmod 777 /data/jenkins_home
4、启动容器
docker run -d --name my_jenkins -u root -p 8085:8080 -p 50000:50000 -v /data/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins
参数解释:
命令 | 描述 | 备注 |
---|---|---|
-d | 后台运行容器,并返回容器ID | |
--name my_jenkins | 设置容器名称为my_jenkins | |
-u root | 使用 root 身份进入容器 | 推荐加上,避免容器内执行某些命令时报权限错误(拉取git代码时,因为这个权限问题踩了个坑,一下午才解决),不加默认使用jenkins用户 |
-p 8085:8080 | 将容器内8080端口映射至宿主机8085端口,这个是访问jenkins的端口 | |
-p 50000:50000 | 将容器内50000端口映射至宿主机50000端口 | |
-v /data/jenkins_home:/var/jenkins_home | /var/jenkins_home目录为容器jenkins工作目录,/data/jenkins_home为宿主机上创建的目录。将此目录挂载到这个位置,方便后续更新镜像后继续使用原来的工作目录 | |
-v /etc/localtime:/etc/localtime | 让容器使用和服务器同样的时间设置 | |
jenkins/jenkins | 镜像的名称,这里也可以写镜像ID |
5、查看日志,查看初始密码
docker logs my_jenkins
查看初始密码。如果错过了,也可以在/var/jenkins_home/secrets/initialAdminPassword中查看
6、访问jenkins
在浏览器中输入:http://serverIp:port/访问jenkins,serverIp为docker宿主机的ip,port即为宿主机映射的端口。我的即为:
http://192.168.xxx:8085/
输入上一部署,复制的密码,进行下一步。可进入docker容器,cat /var/jenkins_home/secrets/initialAdminPassword
7、修改插件源设置为国内
vim /data/jenkins_home/hudson.model.UpdateCenter.xml
将url修改为:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
8、安装插件
默认自定义安装吧。
就一步步的傻瓜操作,创建一个admin账户
二、配置jenkins
1、创建ssh密钥
ssh-keygen -t rsa -C "xxxx" 一路回车
cat /root/.ssh/id_rsa.pub (公钥放置到git上,可百度git配置ssh密钥)
cat /root/.ssh/id_rsa (私钥,复制出来等下放到jenkins上)
2、配置jenkins的git安全账户
把私钥放进来。应用