服务器要求:
cpu:2+;
内存:2G+;

1.gitlab镜像拉取

# gitlab-ce为稳固版本,前面不填写版本则默认pull最新latest版本$ docker pull gitlab/gitlab-ce

2.运行gitlab镜像

$ docker run -d  -p 1443:443 -p 180:80 -p 122: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# -d:后盾运行# -p:将容器外部端口向外映射# --name:命名容器名称# -v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录

3.配置
按下面的形式,gitlab容器运行没问题,但在gitlab上创立我的项目的时候,生成我的项目的URL拜访地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,咱们须要一个固定的URL拜访地址,于是须要配置gitlab.rb(宿主机门路:/home/gitlab/config/gitlab.rb)

# gitlab.rb文件内容默认全是正文$ vim /home/gitlab/config/gitlab.rb
# 配置http协定所应用的拜访地址,不加端口号默认为180external_url 'http://192.168.199.231:180'# 配置ssh协定所应用的拜访地址和端口gitlab_rails['gitlab_ssh_host'] = '192.168.199.231'gitlab_rails['gitlab_shell_ssh_port'] = 222 # 此端口是run时22端口映射的222端口:wq #保留配置文件并退出

4.发送邮件配置
配置文件:/etc/gitlab/gitlab.rb

gitlab_rails['smtp_enable'] = truegitlab_rails['smtp_address'] = "smtp.qq.com"gitlab_rails['smtp_port'] = 465gitlab_rails['smtp_user_name'] = "xxxxxxxxx@qq.com"gitlab_rails['smtp_password'] = "ejdoukrfgj"gitlab_rails['smtp_authentication'] = "login"gitlab_rails['smtp_enable_starttls_auto'] = truegitlab_rails['smtp_tls'] = truegitlab_rails['gitlab_email_from'] = 'xxxxxxxxx@qq.com' 

smtp_user_name:发件邮箱号
smtp_password:受权码非邮箱登录明码

配置好重启服务器

5.批改管理员明码
切换到相应门路下

cd /opt/gitlab/bin/

关上控制台
gitlab-rails console
查问用户账号信息并赋值给u
u=User.where(id:1).first
设置该用户名的明码,明码这里不要应用引号,不然会无奈登录胜利
u.password=12345678
确认明码
u.password_confirmation=12345678
保存信息
u.save!
退出
exit