思路分析
- 代码提交 ,开发人员持续的频繁的提交他们的代码到GitLab上。
- 拉取代码,从GitLab服务器上拉取代码到Jenkins服务器上 。
- 编译代码,在Jenkins服务器上进行代码编译。
- 打包,在Jenkins服务器上将代码进行打包 。
- 分发,将打包后的应用分发到对应的测试环境中。
- 启动服务,将应用程序部署后进行启动服务 。
- 自动测试,通过自动化测试脚本进行测试自动测试
-
1、通过docker-compoes来编排容器
创建 docker_jenkins_compose 文件夹
- docker_jenkins_compose 目录下创建 docker-compose.yml 文件
```yaml
docker-compose.yml
version: ‘3’ services: # 集合 docker_jenkins: user: root # 为了避免一些权限问题 在这我使用了root restart: always # 重启方式 image: jenkins/jenkins:lts # 指定服务所使用的镜像 在这里我选择了 LTS (长期支持) container_name: jenkins # 容器名称 ports: # 对外暴露的端口定义
- 8082:8080
- 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
docker_nginx: restart: always image: nginx container_name: nginx ports:
- 8090:80
- 8433:433
volumes:
- /va/vol_dockers/nginx/conf.d/:/etc/nginx/conf.d
- /var/vol_dockers/nginx/html:/usr/share/nginx/html
3. 创建 启停脚本文件: restart , start, stop, 并修改文件权限
```yaml
# restart
docker-compose restart
# start
docker-compose up -d
# stop
docker-compose stop
chmod 777 restart start stop // 可读可写可执行
2、启动容器
3、查看容器日志
docker logs -f jenkins // 实时日志