主要内容
- 使用docker部署ci/cd 环境
- 使用gitlab ci/cd 解决各种项目集成,部署问题
- 讲解ci/cd涉及到的各个组件、流程,知识点
- 实践各种部署项目的流水线
docker 部署 gitlab
1 2 3 4 5 6 7 8 9 10
| sudo docker run --detach \ --hostname gitlab.ganshizhong.com \ --publish 8011:80 --publish 8010:22 \ --name gitlab \ --restart always \ --volume /home/ec2-user/work/gitlab/config:/etc/gitlab \ --volume /home/ec2-user/work/gitlab/logs:/var/log/gitlab \ --volume /home/ec2-user/work/gitlab/data:/var/opt/gitlab \ --shm-size 256m \ gitlab/gitlab-ce:latest
|
启动成功后,第一次登陆,直接用 root
用户,密码任意设置即可
1
| docker logs -f gitlab # 查看日志
|
CI/CD基础知识
gitlab ci/cd
- gitlab runner
- pipline
- stage
- job
- .gitlab-ci.yml 定义流水线
1 2 3 4
| sudo docker run -d --name gitlab-runner --restart always \ -v /home/ec2-user/work/gitlab-runner/config:/etc/gitlab-runner \ -v /var/run/docker.sock:/var/run/docker.sock \ gitlab/gitlab-runner:latest
|
docker-runner 注册
1 2 3 4 5 6 7 8 9 10 11
| docker run --rm -v /home/ec2-user/work/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner register \ --non-interactive \ --executor "docker" \ --docker-image alpine:latest \ --url "http:/119.255.249.177:8011/" \ --registration-token "v_ghrbXKzYU3LWo6Qfb2" \ --description "first-register-runner" \ --tag-list "test-cicd1,dockercicd1" \ --run-untagged="true" \ --locked="false" \ --access-level="not_protected"
|
gitlab-ci.yml 介绍与编写