Gitlab
是一款广受好评的 GIT
项目管理平台,其中 Gitlab-CE
为免费版本,下面介绍如何通过 Docker
实现 Gitlab
服务部署。
1. 目录创建
老规矩第一步还是先创建数据目录用于文件映射。
mkdir -p /usr/local/dockerdata/gitlab/config
mkdir -p /usr/local/dockerdata/gitlab/data
mkdir -p /usr/local/dockerdata/gitlab/logs
2. 服务启动
完成目录创建后通过到下述命令启动 Gitlab
服务,其中端口映射服务可根据自身情况调整。
docker run -d \
--name gitlab \
--restart always \
--privileged=true \
-p 8080:80 \
-p 8081:443 \
-p 8082:22 \
-v /etc/localtime:/etc/localtime:ro \
-v /usr/local/dockerdata/gitlab/config:/etc/gitlab \
-v /usr/local/dockerdata/gitlab/logs:/var/log/gitlab \
-v /usr/local/dockerdata/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce
3. 配置修改
启动容器后进入会 Gitlab
映射的文件目录中编辑配置信息。
vi /usr/local/dockerdata/gitlab/config/gitlab.rb
修改文件中的下述内容,将 192.168.0.20
替换为你的服务器 IP
。
完成后保存退出,并通过 docker restart gitlab
重启服务使其生效。
external_url 'http://192.168.0.20'
gitlab_rails['gitlab_ssh_host'] = '192.168.0.20'
# 配置 22 端口映射的值
gitlab_rails['gitlab_shell_ssh_port'] = 8082
gitlab_rails['time_zone'] = 'Asia/Shanghai'
4. 端口修改
完成上述步骤后进入 Gitlab
容器内,配置服务对应的端口信息。
docker exec -it gitlab bash
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
修改配置文件的 port
值,将其改成之前启动容器时 80
端口映射的值。
完成后同样在容器中通过 gitlab-ctl restart
重启服务。
production: &base
gitlab:
# 替换为 80 端口映射的值
port: 8080
5. 用户账号
完成上述配置之后即可浏览器访问 IP:8080
,默认用户名为 root
,密码通过下述命令查看:
docker exec -it <container_id> grep 'Password:' /etc/gitlab/initial_root_password