docker-安装Jenkins
-
确保 Docker 已经安装: 在终端中运行以下命令来检查 Docker 是否已经正确安装:
docker --version
如果你看到了 Docker 的版本信息,那么说明已经正确安装。
-
创建一个 Jenkins 数据目录: 在终端中创建一个目录来保存 Jenkins 数据,例如:
mkdir jenkins_home
注意授权,root创建的文件夹对jenkins是没有权限的, 需要授权:chown -R 1000:1000 $PWD/jenkins_home
这个目录将用于在容器中持久化 Jenkins 的数据。
-
运行 Jenkins 容器: 在终端中运行以下命令来启动 Jenkins 容器:
docker run -d -p 8080:8080 -p 50000:50000 -v $PWD/jenkins_home:/var/jenkins_home jenkins/jenkins
官方给出的命令:
docker run -u root --rm -d -p 8080:8080 -p 50000:50000 -v jenkins-data:/var/jenkins_home -v /var/run/docker.sock:/var/run/docker.sock jenkinsci/blueocean这将会拉取 Jenkins 的 Docker 镜像并在容器中运行 Jenkins。解释一下上面的命令参数:
-d
: 在后台运行容器。-p 8080:8080
: 将容器的端口 8080 映射到主机的端口 8080,这是用于访问 Jenkins Web 控制台的端口。-p 50000:50000
: 将容器的端口 50000 映射到主机的端口 50000,这是用于 Jenkins 的分布式构建的端口。-v $PWD/jenkins_home:/var/jenkins_home
: 将主机上的jenkins_home
目录与容器内的/var/jenkins_home
目录进行挂载,这样就能够在容器外持久化 Jenkins 的数据。
-
等待 Jenkins 启动: Jenkins 容器启动后,等待一段时间让 Jenkins 完全启动。你可以通过运行以下命令检查容器的状态:
docker ps
如果状态显示为 "Up",那么说明 Jenkins 已经成功启动。
-
访问 Jenkins Web 控制台: 在浏览器中打开
http://localhost:8080
,这是默认的 Jenkins 控制台地址。如果你的容器运行在远程服务器上,将localhost
替换为服务器的 IP 地址或域名。 -
解锁 Jenkins: 在打开的 Jenkins 控制台页面中,将会有一个要求输入管理员密码的页面。在终端中,运行以下命令来获取管理员密码:
docker exec -it <CONTAINER_ID> cat /var/jenkins_home/secrets/initialAdminPassword
将
<CONTAINER_ID>
替换为 Jenkins 容器的 ID,你可以通过运行docker ps
命令来获取。 -
按照控制台的指导完成 Jenkins 安装: 输入管理员密码后,按照 Jenkins 控制台上的指导进行进一步的 Jenkins 安装,包括创建管理员帐户和选择插件等步骤。
- 用root权限安装docker
-
docker run -d \ -u root \ --name jenkins \ --privileged=true \ --restart=always \ -p 8080:8080 \ -p 50000:50000 \ -v jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /usr/bin/docker:/usr/bin/docker \ -v /etc/timezone:/etc/timezone \ -v /etc/localtime:/etc/localtime \ jenkinsci/blueocean