服务器要求:
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:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录
【docker 部署gitlab代码服务器】3.配置
按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/home/gitlab/config/gitlab.rb)
# gitlab.rb文件内容默认全是注释
$ vim /home/gitlab/config/gitlab.rb
# 配置http协议所使用的访问地址,不加端口号默认为180
external_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'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxxxxxxxx@qq.com"
gitlab_rails['smtp_password'] = "ejdoukrfgj"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_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
推荐阅读
- ROS2|The unauthenticated git protocol on port 9418 is no longer supported.
- python|疫情防控通每日自动汇报讲解
- 区块链|Linux 29岁,你不知道的29个重大事件
- kernel|Linux 迎来 29 岁(从个人爱好到统治世界的操作系统内核)
- 一些容易遗忘的操作|通过ssh上传github仓库
- kubernetes|云原生爱好者周刊(好家伙,Rust 也成立云原生组织了)
- c++|【Rust日报】2022-03-23 RustSBI软件发布v0.2.2版本
- 嵌入式|【Rust日报】2021-11-14 一个开源的基于Rust和Flutter的Notion替代产品
- 区块链|教程丨三分钟教你制作专属NFT智能合约