1.下载镜像(中文社区版)
docker pull twang2218/gitlab-ce-zh
2.创建目录挂载文件
mkdir -p /home/gitlab/etc
mkdir -p /home/gitlab/log
mkdir -p /home/gitlab/data
3.启动容器
docker run -d -p 8443:443 -p 8090:80 -p 8022:22 --restart always --name gitlab -v /home/gitlab/etc:/etc/gitlab -v /home/gitlab/log:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab --privileged=true twang2218/gitlab-ce-zh
4.进入容器
docker exec -it gitlab bash
5.修改gitlab.rb (先查看下一个步骤再决定是否进行本步骤,本步骤是可以跳过的)
vi /etc/gitlab/gitlab.rb
# 这个文件是全注释掉了的,所以直接在首行添加如下配置
# gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
eaxternal_url 'http://192.168.10.232:8090'
# ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '192.168.10.232'
# ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 8022
6.修改gitlab.yml (这一步原本不是必须的,因为gitlab.rb内配置会覆盖这个,为了防止没有成功覆盖所以我在这里进行配置,当然你也可以选择不修改gitlab.rb直接修改这里)
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
# 配置解释: # host:访问的IP # port:访问的端口 # 以上两个和gitlab.rb内eaxternal_url的配置保持一致 # ssh_host:ssh主机ip,和gitlab.rb内gitlab_rails['gitlab_ssh_host']保持一致 # 配置二:找到gitlab_shell标签下的ssh_port,将其修改为9922 #(和gitlab.rb内gitlab_rails['gitlab_shell_ssh_port'] 保持一致) |

1
2
|
# 保存并退出 :wq |
7.让修改后的配置生效
gitlab-ctl reconfigure
这一步有可能导致修改的yml被还原,如果还原可以重新修改直接执行第8步
8.容器内重启gitlab
gitlab-ctl restart
9.退出容器
exit
输入http://192.168.10.232:8090打开页面,默认账户root,密码需要重新设置至少8位