通过 docker 安装 gitlab
安装 gitlab,你起码需要一台 2c4g 的服务器,gitlab 依赖很多很重的组件,我的环境是一台 2c4g 的虚拟机
挂载三个目录:/etc/gitlab
、/var/log/gitlab
、/var/opt/gitlab
映射三个端口:443/https
、80/http
、22/ssh
443 端口如果不用到证书不需要挂载
|
|
等待几分钟之后,通过网站访问 gitlab,用户名为 admin,密码挂载在/Users/cengdong/data/gitlab/config
目录下
修改 gitlab 配置
编辑挂载的配置目录:/Users/cengdong/data/gitlab/config/gitlab.rb
gitlab 的配置项非常多,只修改一项就能满足基本需求:external_url 'http://192.168.184.9'
重启容器docker restart gitlab
或者进入容器通过gitlab-ctl reconfigure
命令使配置生效
通过 docker 安装 gitlab-runner
gitlab-runner 不建议与 gitlab 安装在同一台服务器上
挂载容器运行时以及配置文件
|
|
非交互式注册 runner
有三种类型的 runner:shared
、group
、specific
全局类型 runner 所有人都能用,组类型 runner 只有组内人能用,特殊 runner 只有当前项目能用
在不同地方的 settings->cicd 中可以查看不同的 token
runner 有很多类型的执行器,常用的有shell
、docker
、k8s
,通过--execuotr
参数指定
|
|
修改 gitlab-runner 配置
修改~/data/gitlab-runner/config/config.toml
文件concurrent = 10
concurrent
控制一个 stage 能最多同时执行多少个 job,默认为 1 的情况下如果一个 stage 有多个 job 无法并发执行
在[runners.docker]
项下面添加pull_policy = if-not-present
,否则每次都需要拉取镜像
运行流水线
现在,你可以愉快的运行流水线了。通过创建或者导入项目,在项目的根目录下创建.gitlab-ci.yml
文件
通过 pipeline 语法控制流水线的流程