在使用Docker之后发现真的方便很多了,以前创建个虚机测试环境,安装系统,克隆,快照,更重要的是多个虚机开启时机器内存吃得快。自从用了Docker后机器没那么卡了,腰也不疼了,腿也好了;
网上很多网友都以Docker 的方式做为开发环境,测试环境、还是白帽测试等,其实真的很方便;以后将不断的在Docker环境下进行各类实验了;
本次 以Docker方式启动Jenkins,由于公司之前使用的版本相对比较低,现在更新多个版后,拿个新版本来测试一下;
1、pull一个Jenkins的镜像下来;
docker pull jenkins [官方最新的是Jenkins 2.19.4,镜像大小约715M左右]
如果不喜欢可以自己搜一个:
docker search jenkins
2、直接启动容器:
[root@docker ~]# docker run -d -t --name=jenkins -p 8080:8080 -v /tmp/jenkins/:/var/jenkins jenkins
a2dfd14dc493da2911e57b28b6bee44b7c94dd4519c0f56fb9bfdd3b9b8dd755
查看运行中的容器
[root@docker ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a2dfd14dc493 jenkins "/bin/tini -- /usr/lo" 13 seconds ago Up 13 seconds 0.0.0.0:8080->8080/tcp, 50000/tcp jenkins
打开浏览器输入IP:8080即可看到页面,新版本都会要要求输入一个文件的密码验证;怎么找到这个密码保存在哪里了,根据网页上的文件路径找不着;因为它是在容器里面的,除非你进入容器里复制出来咯,可是我们上面的运行命令无法进入到容器里啊;
方法很简单,挂载到Docker里的数据目录是可以在宿主机里找到的;
第一步:通过上面的别名或者容器的ID查找关键字:”Source”
[root@docker ~]# docker inspect jenkins|grep "Source"
"Source": "/tmp/jenkins",
"Source": "/var/lib/docker/volumes/618609f93ed3017df0aed31484e263373959aa016878fd35e452e137781bd448/_data"
可以看到上面第二行就是宿主机主的真实路径;
根据网页上的提示:
/var/jenkins_home/secrets/initialAdminPassword
那么这个文件的绝对路径就:
/var/lib/docker/volumes/618609f93ed3017df0aed31484e263373959aa016878fd35e452e137781bd448/_data/secrets/initialAdminPassword
cat读出密码:
[root@docker ~]# cat /var/lib/docker/volumes/618609f93ed3017df0aed31484e263373959aa016878fd35e452e137781bd448/_data/secrets/initialAdminPassword
d91f5d266cf54a24b4505c9767b73420 【密码在此】
一句话搞定:【其它挻麻烦的】
[root@docker ~]# cat `docker inspect jenkins|grep "Source"|sed 1d|awk -F : '{print $2}'|sed 's#"##g'|sed 's#,##'`/secrets/initialAdminPassword
d91f5d266cf54a24b4505c9767b73420
可看到到上面的就是密码了:
回到网页上输入刚才的密码 继续——选择右边的手动安装插件,系统推荐的插件不一定你都会全用到;可以进入管理界面后再根据需要安装;
建议选择右边的手动选择安装插件:
选择None,不安装插件,等进入系统后再安装;
其它看着下一步就好了;这样的做法好处是可以快速扩容Jenkins集群;
更多详细的配置可以查看:https://github.com/jenkinsci/docker