Gitlab CI初探

centos runner安装与配置

安装

下载gitlab-runner
wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64

若下载失败。。可使用翻墙代理进行下载,存储到gitlab上

$ git clone http://****/gitlab-runner.git
$ cp gitlab-runner/gitlab-runner-linux-amd64 /usr/local/bin/gitlab-runner
$ chmod +x /usr/local/bin/gitlab-runner
# 本文使用root角色启动runner
# useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
$ gitlab-runner install --user=root —working-directory=/data0/liuyu9/local/gitlab-runner
$ gitlab-runner start
$ gitlab-runner status
gitlab-runner: Service is running!

runner 注册

在gitlab中,runner会运行你定义在yml文件中的任务。一个runner可以是一个虚拟机、一个vps、一台裸机、一个docker容器甚至是一个容器集群。gitlab和runner通过api来通信,因此,唯一的要求就是该runner所在的服务器可以访问。
一个runner可以被指定为一个项目,也可以指定为多个项目,如果服务于所有项目,那么该runner被称为共享runner。
通过 Settings ➔ CI/CD 可以查看到任何属于你project的runner,使用以下步骤来设置项目的runner:
1. 安装:centos、docker、kubernetes方式
2. 配置:register

sudo gitlab-ci-multi-runner register
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
http://****
Please enter the gitlab-ci token for this runner:
***(获取git项目token值)
Please enter the gitlab-ci description for this runner:
[**.**.**.**]: runner描述
Please enter the gitlab-ci tags for this runner (comma separated):
tag名字(很重要,在.gitlab-ci.yml文件里面指定tag,匹配使用哪个tag的runner)
Whether to run untagged builds [true/false]:
[false]: true
Whether to lock the Runner to current project [true/false]:
[true]: true
Registering runner... succeeded                     runner=m15ahKPr
Please enter the executor: docker-ssh, shell, ssh, virtualbox, kubernetes, docker, parallels, docker+machine, docker-ssh+machine:
shell(执行脚本的方式)
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

查看runner状态:Settings -> CI/CD -> runners settings

创建.gitlab-ci.yml文件

gitlab runner是通过使用本文件来管理项目的任务的。放置在根目录下,包含了项目构建的定义。
对于每一次的提交,gitlab都会寻找.gitlab-ci.yml文件,根据文件内容使用指定的runner开启一个job

创建.gitlab-ci.yml文件

stages:
  - test
test:
  stage: test
  script:
    - sh bin/start.sh ConfigServiceTests
  only:
    - develop
  tags:
    - fig-runner26

这里我们只有一个stage:test,only指定了只有在develop分支push的时候才会被执行,tags是fig-runner26,此tag对应刚才注册runner时候的tags
将该文件push到仓库

push代码到git项目,自动执行部署脚本
GitLab–>CI/CD–>Piplines–>Run Pipeline即可执行自动部署脚本

参考翻译自:https://docs.gitlab.com/ee/ci/quick_start/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值