简单三步搭建docker之搭建gitlab私有仓库服务
服务配置:1c2g+2g虚拟内存,服务启动大概需要3.x g内存
内存不足可配置虚拟使用--memory=10M --memory-swap=-1
自定义虚拟内存
**第一步安装docker启动**
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum -y install docker-ce
systemctl start docker
**第二步拉取gitlab镜像并运行**
创建GitLab 的配置 (etc) 、 日志 (logs) 、数据 (data) 放到容器之外, 容器启动后可以映射到本机,然后后续就可以直接在主机查看和编辑了,不用再进入容器操作,便于日后升级, 因此我们先准备这三个目录
#配置文件
mkdir -p /home/gitlab/etc
#数据文件
mkdir -p /home/gitlab/logs
#日志文件
mkdir -p /home/gitlab/data
#拉取镜像 docker pull gitlab/gitlab-ce
**国内拉取过慢添加加速地址**
编辑:vi /etc/docker/daemon.json 添加以下地址
{ "registry-mirrors": [ "https://hub-mirror.c.163.com", "https://mirror.baidubce.com" ] }
重启docker:service docker restart
#运行
docker run -d -p 8880:80 -p 4430:443 -p 222:22 --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
#查看容器状态
docker ps -a
**第三步修改配置文件**
不修改配置文件,是无法进行访问的,我们需要修改两个地方
# 修改配置文件
vi /home/gitlab/config/gitlab.rb
#配置外部访问地址
external_url 'http://公网ip'
#改SSH端口为8880,以便不和宿主机22端口冲突
gitlab_rails['gitlab_shell_ssh_port'] = 8880
#配置ssh协议所使用的访问地址
gitlab_rails['gitlab_ssh_host'] = '公网ip'
修改 vi /home/gitlab/data/gitlab-rails/etc/gitlab.yml
找到关键字 ## Web server settings ,将 host 的值改成映射的外部主机 ip 地址和端口,这里会显示在 gitlab 克隆地址
如端口:port: 8880
修改之后,我们重启一下 gitlab
docker restart gitlab
更新gitlab.yml后重启不一定生效,vi /home/gitlab/data/gitlab-rails/etc/gitlab.yml查看端口是否生效,如果没有就再修改一次,执行以下命令生效:
docker exec -it gitlab /bin/sh -c 'gitlab-ctl restart'
重启gitlab之后浏览器访问以下:
http://ip:8880/
账号:root
查看默认密码:docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
docker之搭建gitlab私有仓库服务
于 2022-04-28 17:22:58 首次发布