Linux Docker部署GitLab、GitLab Runner
创始人
2024-02-21 13:34:01
0

文档

  • https://docs.gitlab.com/ee/install/docker.html
  • https://docs.gitlab.com/runner/install/docker.html
  • https://docs.gitlab.com/15.5/runner/register/index.html#docker

部署GitLab

sudo docker run --detach \--hostname gitlab.example.com \--publish 80:80 \--name gitlab \--restart always \--volume $GITLAB_HOME/config:/etc/gitlab \--volume $GITLAB_HOME/logs:/var/log/gitlab \--volume $GITLAB_HOME/data:/var/opt/gitlab \--shm-size 256m \gitlab/gitlab-ee:latest

--publish 第一个端口是本地端口,第二个端口是容器端口,下面的命令最终会让GitLab运行在 80 端口,对外暴露的域名是 gitlab.example.com,当然对于局域网,要配置dns解析才能用域名访问,可以直接用localhost127.0.0.1主机ip 访问.

部署GitLab Runner

docker run -d --name gitlab-runner --restart always \--add-host=gitlab.example.com:192.168.65.135 \-v /srv/gitlab-runner/config:/etc/gitlab-runner \-v /var/run/docker.sock:/var/run/docker.sock \gitlab/gitlab-runner:latest

--add-host=gitlab.example.com:192.168.65.135 是向容器添加dns解析

注册GitLab Runner

docker run --rm -it \
--add-host=gitlab.example.com:192.168.65.135 \
-v /srv/gitlab-runner/config:/etc/gitlab-runner \
gitlab/gitlab-runner register

注册用到的容器:

  • 也是用 gitlab/gitlab-runner 这个镜像
  • 提供了 register 命令
  • 与上一步共享同一个持久化卷 /etc/gitlab-runner ,参考回答
  • --rm 退出之后会销毁

问题

runner跑ci时拉取不到仓库代码,解析不了域名,需要配置 clone_url,参考官方文档

# 进入runner容器内
docker exec -it runner容器id /bin/bash# 编辑runner的配置文件
vim /etc/gitlab-runner/config.toml# 添加配置
# clone_url = “http://192.168.65.135/”# 这里还可以为每个镜像都配置额外的host,例如
# extra_hosts = ["other-host:192.168.1.104"]
# 可以在192.168.1.104的8080端口运行一个web服务,然后ci中添加以下script,运行ci看看日志
# curl http://other-host:8080/# 重启runner
gitlab-runner restart

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...
【Ctfer训练计划】——(三... 作者名:Demo不是emo  主页面链接:主页传送门 创作初心ÿ...