群晖Docker安装Gitlab
在群晖中通过Docker安装Gitlab
前置条件
- 首先拥有一台可以安装Docker套件的群晖NAS
- 白群晖
- 黑群晖
- 安装Docker套件
下载Gitlab镜像
- 打开docker套件
- 选择注册表,搜索
gitlab-ce
- 双击下载,选择最新的版本,此文编写时为
15.3.1-ce.0
- 下载过程较长,具体看网速,下载完后显示约3G
安装镜像
- 在映像中选择下载刚才下载的镜像,双击打开,弹窗创建容器窗口,直接下一步
- 取个名字(这里换成
gitlab-ce
),并钩上启用自动重新启动
,下一步 - 这一步是端口设置,将docker容器内的端口映射到nas中,可以选择自己喜欢的端口,并记住,后续会用到,然后下一步
- 这一步是目录映射,这里将3个目录映射容器外的nas目录(可按自己喜好),具体可查看官方Docker安装文档,以下为我自己的配置,然后下一步
- 配置文件
- 本地目录:
/docker/gitlab/config
- 容器目录:
/etc/gitlab
- 本地目录:
- 数据
- 本地目录:
/docker/gitlab/data
- 容器目录:
/var/opt/gitlab
- 本地目录:
- 日志
- 本地目录:
/docker/gitlab/logs
- 容器目录:
/var/log/gitlab
- 本地目录:
- 配置文件
- 此处会显示设置的配置,确认无误后点击完成即可,容器开始自动启动,需要较长时间,耐心等待
安装完配置
访问配置
- 因为不是在家里的本地局域网写的blog,此时是无法访问家里的NAS的gitlab,容器启动后,也不知道是否正常,先要配置路由器的端口转发,将刚才的3个端口转发出来。这一步非本文内容,只提几个点。
- 作者家里是电信网络,光猫桥接,路由器拨号
- 路由器K2P,刷了系统
- 注册了一个域名,路由器DDNS解析nas域名
- 端口转发后访问地址端口为
xxx.xxx.com:20080
、xxx.xxx.com:20443
、xxx.xxx.com:20022
配置密码
- 首次访问,要求使用账号密码登录,这时,你是不知道密码的,密码会存放在
/etc/gitlab/initial_root_password
文件中,此时从NAS的/docker/gitlab/config
目录中下载此文件,并获取密码 - 用
root
,初始密码登录gitlab,登录成功后修改root用户密码(初始密码文件24小时后会删除)
额外配置
此时gitlab
已经能正常使用了,我们可以进行一些额外的配置
HTTPS访问
开启https访问主要配置2个文件
- /etc/gitlab/gitlab.rb
1
2
3
4
5
6external_url 'https://git.youdomain.com'
nginx['enable'] = true
nginx['redirect_http_to_https'] = true
nginx['redirect_http_to_https_port'] = 80
nginx['ssl_certificate'] = "/etc/gitlab/ssl/git.youdomain.com.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/git.youdomain.com.key" - 容器内部文件
/opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
1
2
3
4
5
6production:
## GitLab settings
gitlab:
host: git.youdomain.com
port: 20443
https: true