【docker】搭建 gitlab 私有仓库
搭建 gitlab 私有仓库
1.拉取镜像
docker pull gitlab/gitlab-ce
2. 启动容器
docker run -itd \
-p 9980:80 \
-p 9922:22 \
-v /home/gitlab/etc:/etc/gitlab \
-v /home/gitlab/log:/var/log/gitlab \
-v /home/gitlab/opt:/var/opt/gitlab \
--restart always \
--privileged=true \
--name gitlab \
gitlab/gitlab-ce
命令解释:
-i 以交互模式运行容器,通常与 -t 同时使用命令解释
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 后台运行容器,并返回容器ID
-p 9980:80 将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口
-p 9922:22 将容器内22端口映射至宿主机9922端口,这是访问ssh的端口
-v /home/gitlab/etc:/etc/gitlab 将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab-test/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样
--restart always 容器自启动
--privileged=true 让容器获取宿主机root权限
--name gitlab 设置容器名称为gitlab
gitlab/gitlab-ce 镜像的名称,这里也可以写镜像ID
修改配置文件
1)进入容器
docker exec -it gitlab /bin/bash
修改配置文件
vi /etc/gitlab/gitlab.rb
在开头加入一下内容:
#gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://192.168.74.128'
#ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '192.168.74.128'
#ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 9922
让配置生效:
gitlab-ctl reconfigure
最后出现:gitlab Reconfigured!
修改gitlab.yaml 文件
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
默认为80端口,修改端口号为之前配置的端口
重启gitlab服务:
gitlab-ctl restart
输出: