欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Gitlab使用(一)--- 搭建gitlab与gitlab-ci环境

程序员文章站 2022-05-31 18:34:10
...

安装Gitlab

1.在/etc/yum.repos.d/目录下创建文件gitlab-ce.repo,文件内容为:

[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

2.安装gitlab:

yum install gitlab-ce

3.编辑/etc/gitlab/gitlab.rb文件,改变external_url为自己的域名。

4.执行

gitlab-ctl reconfigure

5.此时gitlab就运行在了80端口上。

安装Gitlab-CI

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | bash
yum install gitlab-ci-multi-runner
usermod -aG docker gitlab-runner #把gitlab-runner加到docker用户组
service docker restart #重启docker服务
gitlab-ci-multi-runner restart #重启runner
gitlab-ci-multi-runner register #把runner注册到gitlab,需要输入的token来自gitlab的ci/cd的runner配置中
gitlab-ci-multi-runner list #查看所有配置好的runner

gitlab的ci操作

在gitlab中新建一个项目,在项目根目录中新建文件.gitlab-ci.yml,内容为:

stages:
  - test
  - deploy
  - release
job1
  stage: test
  #对应的是gitlab-ci-multi-runner register命令中输入的tag
  tags:
    - demo
  script:
    - echo "i am job1"
  #只有master分支发生改变,才触发本job
  only:
    - master
job2
  stage: deploy
  script:
    - echo "i am job2"
    - docker build -t hurricane.com:5000/blog .
    - if [ $(docker ps -aq --filter name=web) ];then docker rm -f web;fi
    - docker run -d --name web hurricane.com:5000/blog .
  #提交标签时不触发本job
  except:
    - tags
docker-relase:
  stage: release
  script:
    - docker build -t hurricane.com:5000/blog .
    - docker push hurricane.com:5000/blog:$CI_COMMIT_TAG
  tags:
    - demo
  #只在发生提交标签时触发本job
  only:
    - tags

提交之后,将自动进行CI操作。

 

参考:

****:系统学习Docker 践行DevOps理念

相关标签: gitlab gitlab-ci