目标
本次讲使用gitlab-ce镜像,并汉化。
一、获取gitlab-ce官方镜像
docker pull gitlab/gitlab-ce
二、启动镜像
docker run \
-dit \
--name tool_gitlab \
--network main_net \
--ip 10.115.0.30 \
-v /data/tool/gitlab/etc:/etc/gitlab \
-v /data/tool/gitlab/data:/var/opt/gitlab \
-v /data/tool/gitlab/log:/var/log/gitlab \
gitlab/gitlab-ce
三、汉化gitlab
cd /data/setup/ #进入文件安装目录(宿主机内执行)
yum -y install git #安装git客户端(宿主机内执行)
git clone https://gitlab.com/xhang/gitlab.git #下载汉化包版本库(宿主机内执行)
docker cp gitlab tool_gitlab:/opt/gitlab/embedded/service/ #将汉化文件从宿主机复制到容器中(宿主机内执行)
docker exec -it tool_gitlab bash #进入容器(宿主机内执行)
cd /opt/gitlab/embedded/service/ #进入网页文件相关目录(容器内执行)
cp -rf gitlab/* gitlab-rails/ #将汉化文件覆盖原文件(容器内执行)
vi /etc/gitlab/gitlab.rb #编辑gitlab配置文件(容器内执行)
#--------------------------
#第一处修改前原文
# external_url 'GENERATED_EXTERNAL_URL'
#第一处修改后内容
external_url 'http://gitlab.yourdomain.com/' #修改为域名
#第二处修改前原文
# gitlab_rails['time_zone'] = 'UTC'
#第二处修改后内容
gitlab_rails['time_zone'] = 'PRC' #将标准时修改为中国时间
#--------------------------
gitlab-ctl reconfigure #使修改的配置文件生效(容器内执行)
四、在主nginx配置文件中增加反向代理配置
在/data/main/nginx/conf.d/下增加文件tool_gitlab.conf
文件内容:
#以下配置为将域名gitlab.yourdomain.com反向代理到宝塔面板的管理页面
#注:在域名解析设置中需把域名gitlab.yourdomain.com指向该阿里云ECS的公网IP
server{
listen 80;
server_name gitlab.yourdomain.com;
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://10.115.0.30/;
break;
}
}
执行nginx容器反向代理加载最新配置命令
docker exec -it main_nginx nginx -s reload #在main_nginx容器中重新加载配置文件(在宿主机中执行该命令)