进行gitlab安装准备
创建单独的gitlab用户管理
sudo adduser gitlab
将gitlab用户加入docker组,免sudo运行docker
sudo gpasswd -a gitlab docker
切换到gitlab用户
su gitlab
获取gitlab镜像
拉取最新的gitlab-ce就可以。目前官方的版本是支持多个语言的
docker pull gitlab/gitlab-ce
创建data目录用于保存gitlab服务的数据
通常会将 GitLab 的配置 (etc) 、 日志 (log) 、数据 (opt) 放到容器之外, 便于日后升级
mkdir -p /home/gitlab/data
创建运行 gitlab容器
docker run -d --name gitlab --restart always \
-p 8443:443 \
-p 8090:8090 \
-p 222:22 \
-v /home/gitlab/data/etc:/etc/gitlab \
-v /home/gitlab/data/log:/var/log/gitlab \
-v /home/gitlab/data/opt:/var/opt/gitlab \
gitlab/gitlab-ce:latest
报错:
这个错误信息docker: invalid reference format.
通常表示镜像名称或标签格式不正确。在你的命令中,镜像名称有误,正确的镜像名称应该是gitlab/gitlab-ce:latest
,而不是/gitlab/gitlab-ce:latest
新建同样的目录结构进行存储
重新进入到容器修改配置(重点)
进入gitlab容器
docker exec -it gitlab /bin/bash
修改/etc/gitlab/gitlab.rb,在文件末尾追加:
external_url 'http://192.168.xx.xx:8090'
解释下:
external_url ‘http://192.168.xx.xx:8090’ 配置此项可以通过192.168.xx.xx:8090访问gitlab,同时http clone显示的地址也是有效的
完整操作示例
进入容器:
docker exec -it gitlab /bin/bash
编辑配置文件
vi /etc/gitlab/gitlab.rb
查找 external_url
:
按 /
键,然后输入 external_url
并按回车:
/external_url
编辑或添加 external_url
:
external_url 'http://192.168.xx.xx:8090'
保存并退出
- 按
Esc
键退出插入模式。 - 输入
:wq
并按回车保存并退出
重新配置 GitLab:
重启gitlab服务
gitlab-ctl reconfigure
gitlab-ctl restart