- A+
网上很多类似教程,但多少有点夹带私货,竟然拉取的第三方镜像,不敢乱用,于是结合其他人的博客和官方文档,结合部分作者的笔误踩的坑,知其然也要知其所以然,于2023年4月17日写下这篇。
官方文档:
https://docs.gitlab.com/ee/install/docker.html
主要参考博客:
https://www.cnblogs.com/diaomina/p/12830449.html
这篇文档很通顺,但中途有错误,需结合评论一起食用,而且怀疑步骤多余,因为我只把镜像启动就部署成功了
建议:
1.服务器内存建议大于4G,抄自:https://about.gitlab.com/install/
作者环境:
CentOS7
开始:
#1.拉取gitlab镜像
docker pull gitlab/gitlab-ce
ee是企业版,ce是社区版
#2.运行gitlab
docker run -itd -p 9080:80 -p 9022:22 -v /home/gitlab/etc:/etc/gitlab -v /home/gitlab/log:/var/log/gitlab -v /home/gitlab/opt:/var/opt/gitlab --restart always --privileged=true --name gitlab gitlab/gitlab-ce
解释:
非要头铁用80和22端口也行,就是一般来说早就被占用了
-i 以交互模式运行容器,通常与 -t 同时使用命令解释:
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 后台运行容器,并返回容器ID
-p 9080:80 将容器内80端口映射至宿主机9080端口,这是访问gitlab的端口
-p 9022:22 将容器内22端口映射至宿主机9022端口,这是访问ssh的端口
-v /home/gitlab/etc:/etc/gitlab 将容器/etc/gitlab目录挂载到宿主机目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样
--restart always 容器自启动
--privileged=true 让容器获取宿主机root权限
--name gitlab-test 设置容器名称为gitlab
gitlab/gitlab-ce 镜像的名称,这里也可以写镜像ID
#3.查看初始密码
sudo docker exec -it <CONTAINERID> grep 'Password:' /etc/gitlab/initial_root_password
<CONTAINERID>为你的容器ID,注意不用进入到容器内部
#4 浏览器访问gitlab地址:192.168.5.128:9080
不出意外的话会出现如下界面,账号是root,
如果出现意外,那就考虑一下防火墙问题或移至顶部参考博客,因为在公司我参考那片博客一步不落的搞了一遍,没有问题。
这个界面比较新,因为前几天我在公司部署后跟大部分文档界面一样,左侧有说明文字,今天在家部署,可能版本有更新变简洁了。当前版本:15.10
#5.关闭注册
自己或公司的gitlab,肯定不能开放注册,一般登录后进首页会提示你关闭注册,不过没关系,这里告诉你怎么手动关闭
把这两个取消勾选,然后点保存
#6.汉化
找到Localization,选择简体中文,保存,刷新页面
#7.修改密码
之前不知道哪看的博客说这个自带的密码只会保留24小时,反正这么复杂也不好记,修改一下密码
左侧点击密码,自行修改,完了会让你重新登录
#8.首页汉化
重新到了登录界面才发现,底部也有一个语言选项
选择简体中文,完事
#8.结束