搭建GitLab(基于Docker Compose)
1.创建文件夹,进入该文件夹
# 创建文件夹
$ mkdir -p docker/gitlab/
#进入文件夹
$ cd docker/gitlab/
$ mkdir -p /srv/gitlab/config
$ mkdir -p /srv/gitlab/logs
$ mkdir -p /srv/gitlab/data
GitLab容器使用主机卷来存储持久数据:
本地位置 | 容器中的位置 | 用途 |
---|---|---|
/srv/gitlab/data | /var/opt/gitlab | 存储应用程序数据 |
/srv/gitlab/logs | /var/log/gitlab | 存储日志 |
/srv/gitlab/config | /etc/gitlab | 存储GitLab配置文件 |
2.创建docker-compose.yml
文件
也可直接下载我写好的docker-compose.yml文件
$ vim docker-compose.yml
docker-compose.yml
内容如下:
# 撰写规范
version: '3.8'
# 定义容器
services:
# 名称
gitlab-ee:
# 镜像名称
image: gitlab/gitlab-ee:latest
# 容器名称
container_name: gitlab-ee
# 跟随容器启动
restart: always
# 设置hostname
hostname: 'gitlab.com'
# 端口映射 主机端口:容器端口
ports:
- '80:80'
- '443:443'
- '22:22'
# 数据卷映射
volumes:
- '/srv/gitlab/config:/etc/gitlab'
- '/srv/gitlab/logs:/var/log/gitlab'
- '/srv/gitlab/data:/var/opt/gitlab'
docker-compose.yml
撰写规范(version)是根据docker版本不同,而有所不同的。
$ sudo docker --version
Docker version 19.03.8, build afacb8b7f0
以下是对应关系:撰写文件版本和升级
Compose file format | Docker Engine release |
---|---|
Compose specification | 19.03.0+ |
3.8 | 19.03.0+ |
3.7 | 18.06.0+ |
3.6 | 18.02.0+ |
3.5 | 17.12.0+ |
3.4 | 17.09.0+ |
3.3 | 17.06.0+ |
3.2 | 17.04.0+ |
3.1 | 1.13.1+ |
3.0 | 1.13.0+ |
2.4 | 17.12.0+ |
2.3 | 17.06.0+ |
2.2 | 1.13.0+ |
2.1 | 1.12.0+ |
2.0 | 1.10.0+ |
1.0 | 1.9.1.+ |
3.docker-compose.yml启动管理的容器
/docker/gitlab$ sudo docker-compose up -d
Creating network "gitlab_default" with the default driver
Creating gitlab-ee ... done
启动容器后开始响应可能需要一段时间。首次访问GitLab时,将要求设置管理员密码。更改后,可以使用用户名root
和设置的密码登录。
4.查看由docker-compose管理的容器
/docker/gitlab$ sudo docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------------------------------------------
gitlab-ee /assets/wrapper Up (health: starting) 0.0.0.0:22->22/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp
5.查看容器运行状态
/docker/gitlab$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8230251e7f0c gitlab/gitlab-ee:latest "/assets/wrapper" 3 minutes ago Up 3 minutes (healthy) 0.0.0.0:22->22/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp gitlab-ee
6.修改hosts
$ sudo vim /etc/hostss
添加以下内容:
127.0.0.1 gitlab.com
其中127.0.0.1
是运行docker的主机IP。
7.访问gitlab.com
初次访问会要求设置一个root用户的密码,设置之后可以用root作为账号密码和该次设置的密码进行登录。