本文已参与「新人创作礼」活动,一起开启掘金创作之路。
使用CentOS虚拟机安装Docker
- 首先需要更新升级Linux
yum update
- 安装Docker与启动、开机自启命令如下
curl -ssl https://get.docker.com/ | sh systemctl start docker systemctl enable docker
通过Docker安装Jenkins
- 参考Jenkins官网文档-安装篇 提供的意见
- 建议使用的Docker镜像是jenkinsci/blueocean image(来自the Docker Hub repository)。
- 该镜像包含当前的长期支持 (LTS) 的Jenkins版本(可以投入使用),捆绑了所有Blue Ocean插件和功能。这意味着你不需要单独安装Blue Ocean插件。
- 接着搜索Docker Hub上可用的Jenkins镜像
docker search jenkins
- 再拉取jenkinsci/blueocean镜像
docker pull jenkinsci/blueocean
-
通过
docker images
查询jenkinsci/blueocean镜像是否已正确安装 -
启动jenkins之前,此处需要在防火墙开放888端口用来公开访问 Web 界面,50000 端口允许访问远程 Java (JIRA) API,也可以设置为其他的端口。
-
通过
firewall-cmd --zone=public --add-port=888/tcp --permanent
在防火墙开放888端口 -
通过
firewall-cmd --zone=public --add-port=50000/tcp --permanent
在防火墙开放50000端口 -
启动Jenkins容器应用,Docker会在宿主机上创建一个数据卷jenkins-data,容器映射该卷以持久化数据。
-
使用以下命令启动jenkins
docker run \
--name jenkins-blueocean \
-d \
-p 888:8080 \
-p 50000:50000 \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkinsci/blueocean
- 也通过
docker images
再次查询是否已启动,下图为正常启动情况。 - 其他docker命令:
docker stop containerId // containerId 是容器的ID
docker ps -a // 查看所有容器
docker ps -a -q // 查看所有容器ID
docker start $(docker ps -a -q) // start启动所有停止的容器
docker stop $(docker ps -a -q) // stop停止所有容器
docker rm $(docker ps -a -q) // remove删除所有容器
访问Jenkins的Web界面进行初始化配置
- 通过
http://<ip>:888
访问Jenkins的Web界面。 - 由于启动时使用了-v jenkins-data:/var/jenkins_home命令,将在容器中的
/var/jenkins_home
目录映射到docker内具有名字jenkins-data
的[volume]。也就是在容器内,正在使用jenkins-data命名卷。 - 此时需要通过
cat /var/lib/docker/volumes/jenkins-data/_data/secrets/initialAdminPassword
命令获取到Jenkins管理员密码,并输入至
- Jenkins可以说完全由插件来驱动的,所以安装一些基础的插件是非要必要的,这里我们需要选择安装推荐的插件 ,然后等待插件安装完成即可。
- 接着需要创建用户。
- 配置实例,观察提示,无特殊需求可点击保存并完成。
- 重启Jenkins
进入Jenkins进行Gitlab配置
- 访问配置实例时输入的url,未更改则仍为
http://<ip>:888
,此时需要使用先前创建用户的管理员账号进行登陆。
- 进入系统配置->插件管理,搜索Gitlab
- 安装完成。
-
返回首页,进入到系统配置
-
下拉到Gitlab进行配置
-
此时因为Jenkins部署在本地电脑的虚拟机上,并不能直连公司的gitlab,所以暂时只能连接官网的gitlab仓库。
-
当部署在公司的服务器上时,同下面的实现步骤。
-
登陆自己的gitlab,点击右上角头像选中Preferences或者是相同位置的settings。
-
在左侧菜单栏选择Access Tokens,并在右侧输入选中框内的内容。依次为token名称,有效期与应用权限。
-
创建成功后点击复制token。
-
接着回到Jenkins的gitlab设置处,选择打开Jenkins配置
- 选中类型中的GitLab API token
- 输入刚刚获取到的token,然后点击添加。
- 添加成功后再次点击Credentials,已经有刚刚配置好的API Token了,选择它
- 点击右侧Test Connection测试是否能连接上Gitlab。左侧会有显示Success才是成功的。注意URL是gitlab.com。