linux系统使用docker部署gitlab

1、安装docker

        docker安装见我之前的文章:
        http://t.csdn.cn/H4wAm

2、拉取gitlab镜像

#gitlab-ce社区版最新版
docker pull gitlab/gitlab-ce:latest

#gitlab-jh极狐版最新版
docker pull registry.gitlab.cn/omnibus/gitlab-jh:latest

#两个版本任意拉取,我这里拉取的是社区版

        镜像拉取完成后,可查看拉取到的镜像:

docker images

 

3、创建映射目录

        宿主机(本机)任意目录创建config、logs、data三个映射目录
        

4、部署

sudo docker run -d \
  -p 8096:80 -p 1443:443 -p 8097:22 \
  -v /home/gitlab/config:/etc/gitlab \
  -v /home/gitlab/logs:/var/log/gitlab \
  -v /home/gitlab/data:/var/opt/gitlab \
  --name gitlab \
  gitlab/gitlab-ce:latest

如果报:

 重启下网络及docker即可:

systemctl restart network && systemctl restart docker

5、启动访问容器

docker start gitlab

如果使用IP+端口(8096)无法访问,需放行下防火墙

firewall-cmd --zone=public --add-port=8096/tcp --permanent
firewall-cmd --reload

IP+端口访问后,出现502,如下图,不要惊慌:

是gitlab依赖的服务没有启动完成,需要等待一会。然后重新刷新后,即可访问:

默认用户名是 root。密码使用如下命令查询:

sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

 *如果出现初始密码无法登录,可以重置密码:

进入gitlab容器,执行:

gitlab-rake "gitlab:password:reset[root]"

执行上面命令后等待一会,进行2次密码确认输入,修改成功后,重启容器即可登录

 6、优化

        1)设置中文

        

        2)仓库克隆/下载地址设置

         

这时候发现,仓库克隆地址显示的是这个容器的ID,并不是可以访问的IP。

 我的对外端口8096,容器内部端口80.

修改配置文件/etc/gitlab/gitlab.rb:

因为我们已将将容器的内容映射到宿主机

/home/gitlab/config:/etc/gitlab   容器的/etc/gitlab目录对应宿主机的/home/gitlab/config目录。

 所以我只需要在宿主机更改即可:

vim /home/gitlab/config/gitlab.rb
 
#修改如下
#gitlab访问地址,可以写域名。 IP+端口
external_url 'http://192.168.127.128:8096' 

#如果上边的端口不是80,那下边这行必须添加,如果不加,gitlab访问不了。因为默认会用这个端口号作为gitlab的nginx的监听端口。因为我们这里其实是监听的80端口,所以要额外配置

nginx['listen_port'] = 80

#ssh主机ip,内网IP
gitlab_rails['gitlab_ssh_host'] = '192.168.127.128'
#ssh连接端口(容器22端口对应的端口)
gitlab_rails['gitlab_shell_ssh_port'] = 8097

重启docker即可:

docker restart gitlab

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值