在CentOS7系统使用Docker构建gitlab
详情可参照官方安装连接,以下只记录一些关键步骤
前提
假设docker已安装的前提下,如需了解CentOS7系统安装Docker,可参照笔记ecs操作部分步骤-阿里ECS安装docker或docker官方安装
准备
- 需要了解docker基本命令操作
- 登录ecs服务器,创建jenkins挂载目录
- 登录dockerhub,选择官方社区版本及阅读说明文档;也可使用docker search -s 100 ‘gitlab’直接搜索gitlab镜像start大于100的
设置卷位置
在设置其他所有内容之前,请配置一个新的环境变量$GITLAB_HOME ,该变量指向配置,日志和数据文件将驻留的目录。确保目录存在并且已授予适当的权限。
对于Linux用户,将路径设置为/srv/gitlab:1
export GITLAB_HOME=/srv/gitlab
对于macOS用户,请使用用户$HOME/gitlab目录:1
export GITLAB_HOME=$HOME/gitlab
Linux,macOS查看环境变量1
env
GitLab容器使用主机安装的卷来存储持久数据:
当前位置 | 容器位置 | 用法 |
---|---|---|
$GITLAB_HOME/data | /var/opt/gitlab | 用于存储应用程序数据。 |
$GITLAB_HOME/logs | /var/log/gitlab | 用于存储日志。 |
$GITLAB_HOME/config | /etc/gitlab | 用于存储GitLab配置文件。 |
安装
GitLab Docker镜像可以多种方式运行:
1 | // 1.从docker镜像仓库拉取最新的gitlab(一般选择lts,长期支持的版本,会定时发布系统更新)(https://hub.docker.com/r/gitlab/gitlab-ce) |
运行
1 | // 官方配置 |
修改gitlab配置
输入正在运行的容器:1
docker exec -it gitlab /bin/bash
打开gitlab.rb配置文件1
2
3
4
5
6
7
8
9
10
11// 打开文件
vim /etc/gitlab/gitlab.rb
// 此文件是全注释的,所以直接在首行添加如下配置
# gitlab访问地址,可以写域名(默认端口为80)
external_url 'http://192.168.52.128:9980'
# ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '192.168.52.128'
# ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 7322
/etc/gitlab/gitlab.rb用您的编辑器打开并设置external_url:1
2
3
4
5
6
7# For HTTP
external_url "http://gitlab.example.com:8929"
or
# For HTTPS (notice the https)
external_url "https://gitlab.example.com:8929"
此URL中指定的端口必须与Docker发布到主机的端口匹配。此外,如果未显式设置NGINX侦听端口 nginx[‘listen_port’],它将从中拉出external_url。有关更多信息,请参见NGINX文档。
设置gitlab_shell_ssh_port:
1 | gitlab_rails['gitlab_shell_ssh_port'] = 7322 |
重启修改后的配置1
gitlab-ctl reconfigure
最后,重启gitlab1
gitlab-ctl restart
访问
按照上面的示例,您将能够从Web浏览器下访问GitLab,1
2
3
4
5// 本地访问(忽略)
http://loalhost:8929
// 局域网访问(注意:可查看域名配置-设置白名单笔记,配置安全组规则,允许8929入方向)
http://服务器ip:8929