docker安装gitlab

编程

1.获取镜像

docker pull beginor/gitlab-ce:11.0.1-ce.0

查看镜像, 有1.5G大小

 

查看gitlab镜像

2.运行镜像

由于是docker镜像运行, 所以我们需要把gitlab的配置, 数据, 日志存到容器外面, 即将其挂载到宿主机。
先准备三个目录:

mkdir -p /home/software/gitlab/etc

mkdir -p /home/software/gitlab/logs

mkdir -p /home/software/gitlab/data

准备好这三个目录之后, 就可以开始运行 Docker 镜像了。完整的运行命令如下 ( 查看更多详细配置 ):

docker run 

--detach

--publish 8443:443 # 映射https端口, 不过本文中没有用到

--publish 8090:80 # 映射宿主机8090端口到容器中80端口

--publish 8022:22 # 映射22端口, 可不配

--name gitlab

--restart always

--hostname 10.12.2.22 # 局域网宿主机的ip, 如果是公网主机可以写域名

-v /home/software/gitlab/etc:/etc/gitlab # 挂载gitlab的配置文件

-v /home/software/gitlab/logs:/var/log/gitlab # 挂载gitlab的日志文件

-v /home/software/gitlab/data:/var/opt/gitlab # 挂载gitlab的数据

-v /etc/localtime:/etc/localtime:ro # 保持宿主机和容器时间同步

--privileged=true beginor/gitlab-ce # 在容器中能以root身份执行操作

这个时候已经搭建完了, 查看一下 ( 启动需要几分钟, 我大概启动了2分钟多 ) :

 

查看gitlab运行状态

 

看到状态显示为 "healthy" 就代表已经启动了, 这时候去访问 http://10.12.2.22:8090
第一次访问时,将被重定向到密码重置屏幕, 默认帐户的用户名是root, 登录后, 您可以更改用户名

 

登录界面

3.配置gitlab

要能充分使用gitlab, 必须配置邮件发送功能, 修改配置文件 gitlab.rb (启动镜像后产生的文件), 这里我配置的是QQ邮箱 ( 查看其它邮箱配置 )

vim /home/software/gitlab/etc/gitlab.rb

在文件的最后加上配置:

gitlab_rails["smtp_enable"] = true

gitlab_rails["smtp_address"] = "smtp.qq.com"

gitlab_rails["smtp_port"] = 465

gitlab_rails["smtp_user_name"] = "fuck@qq.com"

gitlab_rails["smtp_password"] = "授权码"

gitlab_rails["smtp_domain"] = "smtp.qq.com"

gitlab_rails["smtp_authentication"] = "login"

gitlab_rails["smtp_enable_starttls_auto"] = true

gitlab_rails["smtp_tls"] = true

gitlab_rails["gitlab_email_from"] = "fuck@qq.com"

网上很多教程说要配置external_url, 我按照加了配置后gitlab反而异常了, 不管它, 用默认的就好了, 保存退出, 再另外开一个终端, 进入容器:

docker exec -it gitlab /bin/bash

此时已经进入docker容器了, 容器中执行命令重新配置gitlab:

gitlab-ctl reconfigure            # 重新配置

现在可以测试邮件是否配置正确了, 同样容器中执行:

gitlab-rails console        # 进入邮件控制台, 稍等一会才能进入

Notify.test_email("baka@qq.com", "Message Subject", "Message Body").deliver_now # 发送测试邮件

 

测试gitlab邮件发送

 

邮件已经成功收到

 

现在邮件配置已经完成了, 需要配置项目路径 (如果你预留的gitlab映射端口是80的话, 到这里已经配置完了, 可以点赞走人了), 在宿主机中 (容器外面) 修改文件gitlab.yml, 如果host和port不对, 要改过来

vim /home/software/gitlab/data/gitlab-rails/etc/gitlab.yml

 

 

修改ip端口


改完之后在容器中重启gitlab就配置完成了。 注意: 此时

不能再重新配置(gitlab-ctl reconfigure), 否则可能会改变刚修改的gitlab.yml文件

 

gitlab-ctl restart     # 重启gitlab

gitlab常用命令

# 重新应用gitlab的配置

gitlab-ctl reconfigure

# 重启gitlab服务

gitlab-ctl restart

# 查看gitlab运行状态

gitlab-ctl status

#停止gitlab服务

gitlab-ctl stop

# 查看gitlab运行日志

gitlab-ctl tail

gitlab邮件没收到? 看这里

如果没收到邮件, 有两个可能 :

  • 电脑没网络 (我就是犯了这个愚蠢的错误, 主机改成静态ip后没网了也不知道, 折腾了很久才发现)
  • 邮件被当做垃圾邮件了 ( 去垃圾箱看看吧 -_-! )

gitlab搭建前后对比

  • 搭建前, 内存只占用了500多M
  • 搭建后, 内存就占用了5G

     

     



作者:Holeski


链接:https://www.jianshu.com/p/ce6d0bd7113a


来源:简书


著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

以上是 docker安装gitlab 的全部内容, 来源链接: utcz.com/z/515684.html

回到顶部