大家好,我是民工哥。
今天给大家介绍一下Gitlab中CI/CD的自动化部署安装与使用。
1. docker方式安装
安装文档:https://docs.gitlab.com/runner/install/docker.html
docker run -dit \
--name gitlab-runner \
--restart always \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
1.1 设置信息
docker exec -it gitlab-runner gitlab-runner register
2. 非docker方式安装
2.1 安装GitLab Runner
安装环境:Linux
其他环境参考:https://docs.gitlab.com/runner/install
下载
curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
添加权限
chmod +x /usr/local/bin/gitlab-runner
新建gitlab-runner用户
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
安装
安装时需要指定我们上面新建的用户
gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
启动
gitlab-runner start
3. 配置Runner
2.1 获取配置信息
进入你的gitlab ——> settings —— > CI/CD ——> Runners
这里主要是记住第4 和 第5 的值
3.2 注册
gitlab-runner register
3.2.1 输入你的gitlab的URL
上一步记录的第4 的值
3.2.2 输入token
输入上一步记录的第5 的值
3.2.3 输入描述
输入runner 的描述,自己看着写,后期可以改
3.2.4 输入tag
输入标签,这里输入 pibigstar
3.2.5 询问是否在未加标签的Build上运行
我这里选择的 true,默认为 false。
3.2.6 询问是否锁定最近项目
默认为 false,直接回车
3.2.7 运行平台
提示你注册成功,输入runner要运行的平台和方式,这里我输入docker,回车
3.2.8 输入运行的docker镜像
输入runner需要在那个镜像下运行,因为我要运行 go项目,所以我输入的是 go:1.13
3.2.9 完成注册
3.3.0 设置
这时页面上会出现这个Runner实例,如果我们设置了tag,那么需要设置一下,就算job没有tag也可以运行
4. 编写.gitlab-ci.yml 文件
在你项目根目录下创建文件:.gitlab-ci.yml,写个小demo。
stages:
- build
- test
- deploy
build_maven:
stage: build
script:
- echo "build maven....."
- echo "mvn clean"
- echo "done"
test_springboot:
stage: test
script:
- echo "run java test....."
- echo "java -test"
- echo "done"
deploy_springboot:
stage: deploy
script:
- echo "deploy springboot...."
- echo "run mvn install"
- echo "done"
当你项目push到gitlab中之后:
在CI/CD ——> pipelines 中即可看到效果
可以点进去看每一步执行了那些操作: