使用 docker 安装配置 gitlab
1: 下载 gitlab images
-
Gitlab是一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目。它拥有与 Github 类似的功能,能够浏览源码,管理缺陷和注释,可以管理团队对仓库的访问,它非常易于浏览提交的版本并提供一个文件历史库。团队成员可以利用内置的简单的聊天程序进行交流。它还提供一个代码片段收集功能可以实现代码复用。
-
GitLab 对于系统性能有要求,所以我们需要将克隆出来的虚拟机的内存提高到至少 2G 以上。
-
docker pull gitlab/gitlab-ce:latest
-
docker pull twang2218/gitlab-ce-zh:latest
-
通过虚拟主机的 ip+端口访问,此时需要设置管理员密码,账号为 root,密码最少为 8 位
2: 编写 docker-compose
docker-compose-gitlab.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
version: "3"
services:
web:
image: "gitlab/gitlab-ce:latest" #gitlab镜像
restart: always
privileged: true #权限
hostname: "" #主机名,即虚拟机的ip
environment:
TZ: "Asia/Shanghai"
GITLAB_OMNIBUS_CONFIG: |
external_url '' #主机名,即虚拟机的ip
gitlab_rails['gitlab_shell_ssh_port'] = 2222
unicorn['port'] = 8888
nginx['listen_port'] = 8084
ports:
- "8084:8084"
- "8443:443"
- "2222:22"
volumes:
- "./config:/etc/gitlab"
- "./log:/var/log/gitlab"
- "./opt:/var/opt/gitlab"
|
3: 启动 gitlab 容器并设置 root
3.1 修改配置
- docker-compose up
- 或者进入容器 config
1
2
3
4
5
6
7
8
9
10
11
|
docker exec -it gitlab /bin/bash
#修改gitlab.rb
vi /etc/gitlab/gitlab.rb
#gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://47.115.218.14'
#ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '47.115.218.14'
#ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 22
|
1
2
3
4
5
6
7
8
9
|
# 修改http和ssh配置
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
gitlab:
host: 192.168.249.132
port: 9980 # 这里改为9980
https: false
# 在gitlab上生成的http地址应该是http://192.168.249.132:9980
|
1
2
3
4
|
#重启gitlab
gitlab-ctl restart
#退出容器
exit
|
- 路径访问:http://192.168.249.132:9980/
- 机器配置要大于 4g,否则很容易启动不了,报 502
3.2 修改 root 密码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# 进入容器内部
docker exec -it gitlab /bin/bash
# 进入控制台
gitlab-rails console -e production
# 查询id为1的用户,id为1的用户是超级管理员
user = User.where(id:1).first
user.password='Lpp19952058'
user.password_confirmation='Lpp19952058'
# 保存
user.save!
# 退出
exit
|
- root 用户登录
- 新建 user lipingping 并登录
- lipingping 创建仓库
文章作者
lucas
上次更新
2022-11-02
(9d2b7d9)