引言
Docker
代码语言:javascript复制建议使用的 Docker 映像是
jenkinsci/blueocean
image来自the Docker Hub repository
。 该镜像包含当前的长期支持 (LTS) 的 Jenkins 版本 (可以投入使用) ,捆绑了所有 Blue Ocean 插件和功能。这意味着你不需要单独安装Blue Ocean
插件。jenkinsci/blueocean
每次发布Blue Ocean新版本时,都会发布新镜像。您可以在标签 page页上看到以前发布的镜像版本列表 。 您还可以使用其他 Jenkins Docker 镜像(在Docker Hub
上可通过jenkins/jenkins
获取)。 但是,这些不会随Blue Ocean的发布而提供,需要通过 Jenkins 中的Manage Jenkins > Manage Plugins
页面进行安装。 在Blue Ocean
入门中了解更多信息。
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
--privileged : 使用该参数,container内的root拥有真正的root权限, 否则,container(容器)内的root只是外部的一个普通用户权限, privileged启动的容器可以看到很多host上的设备,并且可以执行mount, 甚至允许你在docker容器内启动docker容器。
Docker Compose
代码语言:javascript复制docker-compose.yml
version: '3'
services:
jenkins:
image: jenkinsci/blueocean
container_name: jenkins
environment:
- TZ=Asia/Shanghai
volumes:
- ./jenkins-data:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
ports:
- "8083:8080"
- "50000:50000"
privileged: true
user: root
restart: always
注意: 我这里是
8083:8080
,因为有时候 宿主机8080
已被占用 注意:./jenkins-data
有./
表示当前目录,一定要有./
,不然会认为jenkins-data
是一个挂载点
启动
代码语言:javascript复制docker-compose up -d
查看密码并登录
代码语言:javascript复制docker logs -f jenkins
补充:
或者查看密码
代码语言:javascript复制docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword
Q&A
Q: 使用
宝塔面板
配置网站的 nginx Nginx 代理 8083后,页面可以访问,但是页面引用 (/static) 的前端css等文件 404,必须带上端口号8083
才能正常访问页面, A: 注释掉
补充
Nginx
代码语言:javascript复制server {
listen 80;
listen 443 ssl http2;
server_name jenkins.moeci.com;
root /www/wwwroot/jenkins.moeci.com;
# proxy to 8083
location / {
proxy_pass http://localhost:8083;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header REMOTE-HOST $remote_addr;
add_header X-Cache $upstream_cache_status;
# cache
add_header Cache-Control no-cache;
expires 12h;
}
}
安装推荐的插件: 无法连接到Jenkins
参考: - 无法连接到Jenkins - 灰信网(软件开发博客聚合) - Docker 快速安装Jenkins完美教程 (亲测采坑后详细步骤) - 付宗乐 - 博客园 - docker安装jenkins---完美解决jenkins插件安装失败问题_沉淀技术这十年的博客-CSDN博客_jenkins插件安装失败 - Docker 安装 Jenkins 并解决初始安装插件失败问题_docker_脚本之家 - jenkins 下載外掛失敗 有效的處理辦法(親測)_osc_7z601p6x - MdEditor
解决:
注意: 此方法经过测试
失败
修改 插件中心 url
https://updates.jenkins.io/update-center.json
修改为 http://updates.jenkins.io/update-center.json
, 即 https
改 http
或者改为 清华大学官方镜像
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
重启 docker 的 jenkins 容器
代码语言:javascript复制docker-compose down
docker-compose up -d
参考
感谢帮助!
- Docker:docker安装部署jenkins - 怒吼的萝卜 - 博客园
- 使用docker部署Jenkins及初始配置 | 二丫讲梵
- docker-compose 安装jenkins的正确姿势 实践笔记_JanelSirry's Blog-CSDN博客
- 安装Jenkins
本文作者: yiyun
本文链接: https://cloud.tencent.com/developer/article/1970861
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!