文章目录
- 步骤1 - 安装Java 11
- 步骤2 - 安装Jenkins
- 步骤3 - 安装Docker
- 步骤4 - 配置Docker Cloud
- 步骤 5 - 验证
- 步骤 6 - 可能会遇到的问题
在本教程中,我们将展示如何在CentOS上安装Jenkins和Docker,并将它们配置在同一台机器上,使Jenkins能够使用Docker云。(故事背景:朋友有一台闲置的腾讯云服务器,想着闲来没事搭一套Jenkins,正好最近开始学习 GO。)
目标:每次 Gitee 进代码的时候,会自动触发 Jenkins 运行。至于为啥不是 GitHub,我最开始连接的就是 GitHub,但是网络不稳定,容易超时…
步骤1 - 安装Java 11
首先,我们需要在CentOS上安装Java 11。使用以下命令来安装:
sudo yum install java-11-openjdk-devel
您可以验证Java版本:
java -version
步骤2 - 安装Jenkins
接下来,我们将安装Jenkins。在CentOS上,我们可以使用以下命令来安装最新的LTS版本:
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
sudo yum install jenkins
// 设置 Jenkins 开机自启动
sudo systemctl enable jenkins
Jenkins安装后将自动启动,您可以通过访问http://[your-server-IP]:8080
来验证安装。您将在网页上看到一个页面,提示您输入密码。
要找到Jenkins的初始管理员密码,可以使用以下命令:
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
输入密码后,您将进入Jenkins的控制面板。
步骤3 - 安装Docker
接下来,我们将安装Docker。使用以下命令在CentOS上安装最新版的Docker:
sudo yum install docker
安装完成后,启动Docker, 并设置开机自启动:
sudo systemctl start docker
systemctl enable docker
验证Docker是否正在运行:
sudo systemctl status docker
步骤4 - 配置Docker Cloud
现在我们将配置Docker Cloud以在Jenkins中使用Docker云。在Jenkins控制面板中,单击左侧菜单中的“Manage Jenkins”,然后单击“Configure System”。
在“Configure System”页面中,向下滚动到“Cloud”部分,单击“Add a new cloud”下拉框中的“Docker”。在“Docker”部分中,填写以下信息:
- Docker URL:
unix:///var/run/docker.sock
- Credentials: 点击"Add"创建Docker Hub凭据,输入您的Docker Hub用户名和密码。
- Docker Agent templates: 点击“Add Docker Template”,在“Docker Image”输入框中输入Docker镜像名称(例如:
docker.io/centos:latest
),选择刚刚创建的凭据,并在“Volumes”下添加任何必要的卷。
如下图
保存配置更改后,单击Jenkins控制面板左侧菜单中的“New Item”创建一个新的Jenkins项目,例如名为“Docker Test”的项目。
在项目配置页面的“General”部分中,勾选“Restrict where this project can be run”,在“Label Expression”中输入“docker”,以使此项目在Docker云中运行。
最后,单击“Save”以保存
步骤 5 - 验证
创建验证的 pipeline:
-
点击主页右上角的 “New Item”
-
按照下图的步骤,先填写 pipeline 的名称,然后选择 pipeline,最后点击 OK
-
将下面的代码复制到下图的位置,然后点击 save
pipeline {
agent {
docker { image 'node:7-alpine' }
}
stages {
stage('Test') {
steps {
sh 'node --version'
}
}
}
}
- 点击 Build Now 运行
步骤 6 - 可能会遇到的问题
可能会遇到下面的问题,无法使用 docker 下载镜像,解决方法就是加权限
chmod 777 /var/run/docker.sock