GitLab支持Docker容器化部署,以下是详细的步骤:
1. 安装Docker
首先,确保在您的服务器上安装了Docker。可以从Docker官网下载并安装适合您操作系统的Docker版本。
2. 拉取GitLab镜像
使用以下命令从Docker Hub拉取最新的GitLab CE(社区版)镜像:
docker pull gitlab/gitlab-ce
如果您在中国大陆地区,可能需要使用镜像加速服务,例如使用docker-mirror.aigc2d.com提供的镜像源:
docker pull docker-mirror.aigc2d.com/gitlab/gitlab-ce:latest
3. 创建并启动GitLab容器
以下是一个基本的命令示例,用于创建并启动GitLab容器:
docker run -d \ --hostname gitlab.example.com \ -p 443:443 \ -p 80:80 \ -p 22:22 \ --name gitlab \ --restart always \ -v /srv/gitlab/config:/etc/gitlab \ -v /srv/gitlab/logs:/var/log/gitlab \ -v /srv/gitlab/data:/var/opt/gitlab \ gitlab/gitlab-ce:latest
解释一下上述命令中的各个参数:
-d
: 后台运行容器。--hostname gitlab.example.com
: 设置容器的主机名为gitlab.example.com
。-p 443:443
: 将容器的443端口(HTTPS)映射到主机的443端口。-p 80:80
: 将容器的80端口(HTTP)映射到主机的80端口。-p 22:22
: 将容器的22端口(SSH)映射到主机的22端口。--name gitlab
: 设置容器名称为gitlab
。--restart always
: 容器退出后自动重启。-v /srv/gitlab/config:/etc/gitlab
: 挂载主机上的/srv/gitlab/config
目录到容器的/etc/gitlab
目录。-v /srv/gitlab/logs:/var/log/gitlab
: 挂载主机上的/srv/gitlab/logs
目录到容器的/var/log/gitlab
目录。-v /srv/gitlab/data:/var/opt/gitlab
: 挂载主机上的/srv/gitlab/data
目录到容器的/var/opt/gitlab
目录。gitlab/gitlab-ce:latest
: 使用的GitLab镜像。
4. 初始化配置
进入容器并初始化配置:
docker exec -it gitlab bash
记录初始root密码:
cat /etc/gitlab/initial_root_password
修改gitlab.rb
文件以配置外部URL和其他设置:
vi /etc/gitlab/gitlab.rb
例如,配置外部URL为http://your_server_ip:80
:
external_url 'http://your_server_ip:80'
保存并退出编辑器,然后重新配置并重启GitLab:
gitlab-ctl reconfigure gitlab-ctl restart
5. 访问GitLab
打开浏览器,访问http://your_server_ip:80
,使用初始root密码登录,然后设置新密码。
6. 常用命令
以下是一些常用的Docker命令,用于管理GitLab容器:
-
查看容器状态:
docker ps
-
停止容器:
docker stop gitlab
-
重启容器:
docker restart gitlab
-
进入容器命令行:
docker exec -it gitlab bash
-
查看容器日志:
docker logs -f gitlab