流水线能够让我的项目公布流程更加清晰,docker 能够大大减少 Jenkins 配置。
1、前言
- 数据卷挂载到
/var
磁盘目录下,因为该磁盘空间较大,前面须要挂载容器数据卷,以防内存吃紧。 - 为了能够留存启动
Jenkins
服务的配置以及启停 Jenkins 不便,我采纳Docker Compose
部署(没有用到 Compose 的外围性能、没有关联容器,纯正集体爱好😊,大佬们有更好的形式烦请指导一二,感激😊)
先简略介绍一下 Docker Compose
2、Docker Compose
Docker Compose 是 Docker 官网编排(Orchestration)我的项目之一,负责疾速在集群中部署分布式应用。
Dockerfile 能够让用户治理一个独自的利用容器;而 Compose 则容许用户在一个模板(YAML 格局)中定义一组相关联的利用容器(被称为一个 project,即我的项目),例如一个 Web 服务容器再加上后端的数据库服务容器等。
该我的项目由 Python 编写,实际上调用了 Docker 提供的 API 来实现。
首先介绍几个术语。
- 服务(service):一个利用容器,实际上能够运行多个雷同镜像的实例。
- 我的项目(project):由一组关联的利用容器组成的一个残缺业务单元。
可见,一个我的项目能够由多个服务(容器)关联而成,Compose 面向我的项目进行治理。
上面演示单机部署 Jenkins
3、通过 docker-compoes 来部署容器
- 创立 docker_jenkins_compose 文件夹
- docker_jenkins_compose 目录下创立 docker-compose.yml 文件
- 编写
docker-compose.yml
# docker-compose.yml
version: '3'
services: # 汇合
docker_jenkins:
user: root # 为了防止一些权限问题 在这我应用了 root
restart: always # 重启形式
image: jenkins/jenkins:lts # 指定服务所应用的镜像 在这里我抉择了 LTS (长期反对)
container_name: jenkins # 容器名称
ports: # 对外裸露的端口定义
- 8082:8080 # 拜访 Jenkins 服务端口
- 50000:50000
volumes: # 卷挂载门路
- /var/vol_dockers/jenkins_home/:/var/jenkins_home # 这是咱们一开始创立的目录挂载到容器内的 jenkins_home 目录
- /var/run/docker.sock:/var/run/docker.sock
- /usr/bin/docker:/usr/bin/docker # 这是为了咱们能够在容器内应用 docker 命令
- /usr/local/bin/docker-compose:/usr/local/bin/docker-compose
- 创立启停脚本文件:restart , start, stop, 并批改文件权限
-
创立文件
# restart docker-compose restart
# start docker-compose up -d
# stop docker-compose stop
- 批改文件权限
chmod 777 restart start stop // 可读可写可执行
4、启动容器
./start
5、查看容器日志
docker logs 'ContainerId'
生成 Jenkins 登录初始密码,一会登录的时候要用
docker logs -f jenkins
查看实时日志
查看 Jenkins 状态
ps -ef | grep jenkins
6、宿主机拜访 jenkins 主目录
# 容器内 /var/jenkins_home 挂载目录
/var/vol_dockers/jenkins_home
7、登录 Jenkins
浏览器关上 http:// 主机 ip:8082
8、启动问题及解决
宿主机里拜访 localhost:8082
curl localhost:8082
Authentication required
防火墙要凋谢 50000
和 8082
端口,同时也要配置阿里云 平安组规定
。
👉 防火墙相干的能够参考掘金文章
本篇完,当前启停 Jenkins 服务能够间接执行下面配置的可执行文件即可,比拟不便。前面接着开始创立 jenkins 用户,配置 Jenkins。
🎈🎈🎈
🌹 继续更文,关注我,你会发现一个虚浮致力的宝藏前端😊,让咱们一起学习,独特成长吧。
🎉 喜爱的小伙伴记得点赞关注珍藏哟,回看不迷路 😉
🎁 欢送大家评论交换, 蟹蟹😊