前提环境
Linux 系统、docker 环境、maven、git、jdk
步骤
一、使用 docker 拉取 jenkins 镜像
-
docker search jenkins
-
docker pull jenkins/jenkins
- 查看本地镜像
docker images
二、在宿主机创建 jenkins 挂载目录并授权
-
# 目录自定义 mkdir -p /home/local/jenkins_home chmod 777 /home/local/jenkins_home
三、启动 jenkins 镜像
-
docker run --name myjenkins -p 9995:8080 -p 50001:50000 \ --restart=always -u root \ -v /var/run/docker.sock:/var/run/docker.sock \ -v $(which docker):/bin/docker \ -v /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7 \ -v /var/lib/docker/tmp:/var/lib/docker/tmp \ -v /home/local/jenkins_home:/var/jenkins_home \ -v /etc/localtime:/etc/localtime \ -v /usr/local/maven/apache-maven-3.8.6:/usr/local/maven \ -d jenkins:1.25.5
上述命令说明:
1. --restart=always #Docker重启后该容器也为随之重启
2. -u root
#以root的身份去运行镜像(避免在容器中调用Docker命令没有权限)
#最好使用docker用户去运行
3. -v $(which docker):/bin/docker
#将宿主机的docker命令挂载到容器中
#可以使用which docker命令查看具体位置
4. -v /var/run/docker.sock:/var/run/docker.sock
#容器中的进程可以通过它与Docker守护进程进行通信
5. -v /usr/lib64/libltdl.so.7:/usr/lib/x86_64-linux-gnu/libltdl.so.7
#libltdl.so.7是Docker命令执行所依赖的函数库
#容器中library的默认目录是 /usr/lib/x86_64-linux-gnu/
#把宿主机的libltdl.so.7 函数库挂载到该目录即可
#可以通过whereis libltdl.so.7命令查看具体位置
#centos7位置/usr/lib64/libltdl.so.7
#ubuntu位置/usr/lib/x86_64-linux-gnu/libltdl.so.7
6. -v /home/local/jenkins_home:/var/jenkins_home
#将运行的docker镜像目录挂载到本地的/home/local/jenkins_home目录
7. -v /usr/local/maven/apache-maven-3.8.6:/usr/local/maven
#将本地的maven拷贝到镜像对应目录
8. -v /etc/localtime:/etc/localtime
#保持镜像和宿主机时间一致
9. -d #后台运行镜像
- 运行上述命令,查看 jenkins 容器日志,是否启动成功
docker logs -f 容器id/名称
- 进入镜像
docker exec -it 容器id/名称
- 在容器中运行以下命令,如果没出错,成功一半了
docker ps ls
四、配置 jenkins
- 在日志中找到密码,复制输入下一步,安装推荐的插件,直到配置完成。
- 后续就是全局配置,需要中文的可以下载插件,之后指定位置输入 zh_CN , 切换中文
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于