首页 > 其他 > 详细

docker部署gitlab

时间:2020-05-05 16:56:54      阅读:63      评论:0      收藏:0      [点我收藏+]

 

一、前提条件

(1)     存在docker

(2)     服务器可以联网(外网)

(3)     服务器内存至少4G(内存不够会出现502错误)

内存不足502错误如下图所示:

技术分享图片

 

 

 

二、安装

本次安装在CentOS7下进行,下面的命令建议复制到记事本后再从记事本复制

 

# 1、查找GitLab镜像

docker search gitlab

# 2、拉取gitlab docker镜像 

docker pull gitlab/gitlab-ce:latest

  

# 3、运行GitLab并运行容器 

docker run  -itd   -p 9980:80  -p 9922:22  -v /usr/local/gitlab-test/etc:/etc/gitlab   -v /usr/local/gitlab-test/log:/var/log/gitlab  -v /usr/local/gitlab-test/opt:/var/opt/gitlab  --restart always  --privileged=true  --name gitlab-test  gitlab/gitlab-ce

  

命令解释:
-i  以交互模式运行容器,通常与 -t 同时使用命令解释:

-t  为容器重新分配一个伪输入终端,通常与 -i 同时使用

-d  后台运行容器,并返回容器ID

-p 9980:80  将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口

-p 9922:22  将容器内22端口映射至宿主机9922端口,这是访问ssh的端口

-v /usr/local/gitlab-test/etc:/etc/gitlab  将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab-test/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样

--restart always  容器自启动

--privileged=true  让容器获取宿主机root权限

--name gitlab-test  设置容器名称为gitlab-test

gitlab/gitlab-ce  镜像的名称,这里也可以写镜像ID

 

# 重点:接下来的配置请在容器内进行修改,不要在挂载到宿主机的文件上进行修改。否则可能出现配置更新不到容器内,或者是不能即时更新到容器内,导致gitlab启动成功,但是无法访问

# 4、进入容器内

docker exec -it gitlab-test /bin/bash


# 5、修改gitlab.rb (先查看下一个步骤再决定是否进行本步骤,本步骤是可以跳过的) 

# 打开文件
vi /etc/gitlab/gitlab.rb

# 这个文件是全注释掉了的,所以直接在首行添加如下配置

 
# gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
eaxternal_url ‘http://192.168.52.128:9980‘
# ssh主机ip
gitlab_rails[‘gitlab_ssh_host‘] = ‘192.168.52.128‘
# ssh连接端口
gitlab_rails[‘gitlab_shell_ssh_port‘] = 9922

 

  技术分享图片

 

 

# 6、修改gitlab.yml (这一步原本不是必须的,因为gitlab.rb内配置会覆盖这个,为了防止没有成功覆盖所以我在这里进行配置,当然你也可以选择不修改gitlab.rb直接修改这里)

# 打开文件
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

 

# 配置一:找到gitlab标签,将其子标签如下修改
技术分享图片
# 配置解释:

# host:访问的IP

# port:访问的端口

# 以上两个和gitlab.rb内eaxternal_url的配置保持一致

# ssh_host:ssh主机ip,和gitlab.rb内gitlab_rails[‘gitlab_ssh_host‘]保持一致

 


# 配置二:找到gitlab_shell标签下的ssh_port,将其修改为9922
#(和gitlab.rb内gitlab_rails[‘gitlab_shell_ssh_port‘] 保持一致)
技术分享图片

# 保存并退出
:wq

 

 

 

 

 

 

# 7、让修改后的配置生效

gitlab-ctl reconfigure

  

# 8、重启gitlab 

gitlab-ctl restart

  

# 9、退出容器 

exit

  

# 10、在游览器输入如下地址,访问gitlab(eaxternal_url配置的就是这个) 

http://192.168.52.128:9980

如果访问不成功的话: 

(1)     进入容器查看gitlab.rb和gitlab.yml文件是否配置成功

(2)     查看防火墙是否开放9980、9922端口

 

# 11、第一次访问默认是root账户,会需要修改密码(密码至少8位数,出现如下界面就基本上部署成功了)

 技术分享图片

 

 

 

 

# 12、输入新密码后进行登录

root/gitlab123456

技术分享图片

 

 

# 13、登录后界面如下图,创建一个新项目

技术分享图片

 

 


# 14、输入信息,创建项目

技术分享图片

 

# 15、检查这里两处的ip的端口是否是你配置的

技术分享图片

 

 

如果这里两处的端口和ip和配置的不一样,再次进入容器检查gitlab.yml文件

如下图显示:

 技术分享图片

 

 技术分享图片

 

 

若不一样,将其修改为你的配置,然后:wq,再进行下面的操作

gitlab-ctl reconfigure

gitlab-ctl restart

  

# 16、安装到此结束

 

 

三、关闭用户注册

1、使用root用户登录gitlab

 

2、点击【Admin Area】 

 技术分享图片

 

 

3、点击【Settings】 

 技术分享图片

 

 

4、点击Sign-in restrictions这一栏的【Expand】

技术分享图片

 

 

5、取消勾选

 技术分享图片

 

 

6、往下滑动,找到保存按钮,点击保存

技术分享图片

 

 

7、进入登录界面,发现注册的窗口已经消失了

 技术分享图片

 

 

四、邮件配置

 未完成~~~

 

五、自动备份配置

 未完成~~~

 

docker部署gitlab

原文:https://www.cnblogs.com/diaomina/p/12830449.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!