• 对于注定会优秀的人来说,他所需要的,只是时间----博主
  • 手懒得,必受贫穷,手勤的,必得富足----《圣经》
  • 帮助别人,成就自己。愿君在本站能真正有所收获!
  • 如果你在本站中发现任何问题,欢迎留言指正!
  • 本站开启了防爆破关小黑屋机制,如果您是正常登录但被关进小黑屋,请联系站长解除!

<十八>Jenkins实战应用–使用docker部署Jenkins及初始配置

docker eryajf 5个月前 (06-01) 2002°C 已收录 0个评论
本文预计阅读时间 48 分钟

*系列汇总*

这是一个系列文章,大大小小到今天惊然发现竟然已经累计二十篇了,也就不得不做一个小汇总。回想当初写第一篇文章的时候,就已经决心事无巨细,一应认真的走下来,回头遮望,看着皇皇这么多文章,一股强烈的成就感就此油然而生,于是便有了这些汇总整理。在这个过程当中,好像也帮助过不少的人,这是让我尤其开心的事情,同时也结识了一些志同道合的朋友,再没有比这更让人觉得愉悦的事情啦!也希望以后写出更多类似的系列文章。

文章汇总地址如右:Jenkins 入门教程。

如果相中哪个,点击进去便是。希望正在读这段话的你能够在这个小系列中获得自信以及喜悦!

注:本文章根据网上飞翔分享的文档整理。

关于 docker 的安装部署,这里暂先略掉。

1,先下载 Jenkins 的镜像。

[root@localhost ~]$docker pull jenkinsci/blueocean

2,查看镜像。

[root@localhost ~]$docker images
REPOSITORY           TAG             IMAGE ID            CREATED             SIZE
jenkinsci/blueocean  latest          52e299133c9c        20 hours ago        438MB

3,将镜像启动成容器。

mkdir /mnt/jenkins

docker run -d  \
--name jk -u root \
-p 9090:8080  \
-v /mnt/jenkins/jenkins_home:/mnt/jenkins/jenkins_home  \
jenkinsci/blueocean

说明:

4,查看启动的容器。

[root@localhost ~]$docker ps
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                               NAMES
19e670dc09b0        jenkinsci/blueocean   "/sbin/tini -- /usr/…"   4 seconds ago       Up 3 seconds        50000/tcp, 0.0.0.0:9090->8080/tcp   jenkins

启动之后就可以直接通过宿主机 ip+映射的端口进行访问了。

5,初入 Jenkins。

注意刚进入之后会有一个坑。

这里看到指定了一个路径,去到 var 下去找,但是这个目录下并没有这个目录,可能这是镜像默认的一个路径,但是事实却并非如此。

那么我们就要用一下 find 大法了。

这里是我之前起了几次容器才会有多个文件,根据时间判断是哪个就行了。

接下来去到容器当中看看。

[root@localhost mnt]$docker exec -it jk bash
bash-4.4#
bash-4.4# ls
bin  etc   lib	  mnt	root  sbin  sys  usr
dev  home  media  proc	run   srv   tmp  var
bash-4.4#

注意这里容器中使用 apk 命令来管理应用的安装配置,类似于系统中的 yum 命令。

先来查看一下 apk 命令的用法。

bash-4.4# apk -h
apk-tools 2.8.2, compiled for x86_64.

6,基础软件安装。

接下来操作一波安装一些常用的工具。

1,maven。

bash-4.4# apk add maven
OK: 402 MiB in 107 packages
bash-4.4# apk search ansible
ansible-2.4.1.0-r0
ansible-doc-2.4.1.0-r0
bash-4.4# apk add ansible
OK: 402 MiB in 107 packages
bash-4.4# apk add ansible-doc
OK: 402 MiB in 107 packages

接着查看一下这些工具在容器中是安在了什么地方。

bash-4.4# apk info -L maven
maven-3.5.2-r0 contains:
etc/mavenrc
usr/bin/mvnDebug
usr/bin/mvn

2,git。

bash-4.4# apk info -L git
usr/bin/git
usr/bin/git-upload-pack
usr/bin/git-receive-pack
usr/bin/git-upload-archive
usr/bin/git-shell

3,jdk。

bash-4.4# echo $JAVA_HOME
/usr/lib/jvm/java-1.8-openjdk

7,Jenkins 中的基础配置。

现在进行基础的配置,包括插件安装,环境变量的配置等。

插件有:

git	
gitlab	可以配置与 gitlab 的连接。
Publish Over SSH	使用 ssh 的方式与 remote 服务器进行交互,之前一直使用命令代劳一切了,这次采用一下系统的插件。
docker
ansible
Monitoring	监控 Jenkins 所消耗的系统资源。

插件安装不做过多介绍。

我们来到系统设置–》全局工具配置页面

依然是一些工具的配置。

刚才已经全部看过了,,现在配置如下。

上边都是一些基本工作,必须要做的,不然下边的事儿都免谈了。

接下来的操作则是完全利用 Jenkins 中的工具,把免秘钥工作的事儿给干了。我们来看下如何配置的。

首先在容器当中生成密钥对。

然后来到 Jenkins 中先将容器自己的私钥放进来。

在初始界面点击 Credentials 添加证书。

这个时候去容器中复制好刚生成的私钥,等下要用。

对圈起来的地方进行配置。然后点击 ok。就把 Jenkins 本机的私钥添加进去了,随后只要我们把 Jenkins 公钥放入其他地方(或者是服务器,或者是其他地方),就可以直接进行使用这个配置好的证书进行登陆了。

然后进入到系统配置,配置出容器中的 Jenkins 与远程服务器宿主机的信息,不要着急,这个地方的配置,会在等会儿用得到。

以上简单表述了一下 Jenkins 通过 docker 部署之后的一些简单配置过程。接下来也会开启 docker 时代,都以 docker 为基准进行更多功能的配置以及扩展。

就像日新月异的技术一样的,我们自己所掌握的,也应该是日日新的。


二丫讲梵 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明<十八>Jenkins 实战应用–使用 docker 部署 Jenkins 及初始配置
赞赏
喜欢 (0)or
[如果想支持本站,可支付宝赞助]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮