一、创建容器
准备工作:
- 在环境变量中添加
GITLAB_HOME,比如我的为D:\Users\quanzaiyu\.docker\datas\gitlab,命令:setx GITLAB_HOME D:\Users\quanzaiyu\.docker\datas\gitlab - 在 hosts 文件中添加
127.0.0.1 gitlab.xiaoyulive.top,以便通过浏览器访问
通过以下命令创建一个GitLab容器:
docker run --detach --hostname gitlab.xiaoyulive.top ^--publish 10443:443 --publish 8080:80 --publish 8022:22 ^--name gitlab ^--restart always ^--volume %GITLAB_HOME%\config:/etc/gitlab ^--volume %GITLAB_HOME%\logs:/var/log/gitlab ^--volume %GITLAB_HOME%\data:/var/opt/gitlab ^gitlab/gitlab-ee
如果想要安装中文版,可以使用社区中文版:
docker run -d --hostname gitlab.xiaoyulive.top ^-p 10443:443 -p 8080:80 -p 8022:22 ^--name gitlab ^--restart always ^-v %GITLAB_HOME%\config:/etc/gitlab ^-v %GITLAB_HOME%\logs:/var/log/gitlab ^-v %GITLAB_HOME%\data:/var/opt/gitlab ^--privileged=true ^twang2218/gitlab-ce-zh
但是创建好之后,我们访问 http://gitlab.xiaoyulive.top:8080/ 会发现无法访问:
二、修改配置
进入容器:
docker exec -it gitlab bash
进行如下配置:
$ vim /etc/gitlab/gitlab.rb# 在gitlab创建项目时候http地址的host(不用添加端口)external_url 'http://gitlab.xiaoyulive.top'// 在gitlab创建项目时候ssh地址的host(不用添加端口)gitlab_rails['gitlab_ssh_host'] = 'gitlab.xiaoyulive.top'# docker run 的时候我们把22端口映射为外部的8022了gitlab_rails['gitlab_shell_ssh_port'] = 8022$ vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.ymlport: 8080
重新配置并重启GitLab:
gitlab-ctl reconfiguregitlab-ctl restart
再次访问 http://gitlab.xiaoyulive.top:8080/ ,可以看到页面正常打开了:
