GitLab在Linux上使用Docker部署指南
安装Docker
根据Linux发行版选择对应安装方式(以Ubuntu为例):
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates tzdata
curl -fsSL https://get.docker.com | sudo sh
sudo systemctl enable --now docker
安装Docker Compose(可选但推荐)
用于简化多容器应用管理,安装命令:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
硬件要求
GitLab对资源消耗较大,建议分配至少2核CPU、4GB内存(生产环境建议更高配置),避免因资源不足导致容器无法启动。
mkdir -p /opt/gitlab/{config,logs,data}
/opt/gitlab目录下创建docker-compose.yml,内容如下:version: '3.6'
services:
gitlab:
image: gitlab/gitlab-ce:latest # 使用社区版(CE),如需企业版(EE)替换为gitlab/gitlab-ee:latest
container_name: gitlab
restart: always # 开机自启
ports:
- '8080:80' # HTTP端口(访问Web界面)
- '8443:443' # HTTPS端口(可选)
- '2222:22' # SSH端口(避免与宿主机SSH冲突)
volumes:
- './config:/etc/gitlab' # 配置文件目录
- './logs:/var/log/gitlab' # 日志文件目录
- './data:/var/opt/gitlab' # 数据文件目录(仓库、用户数据等)
shm_size: '256m' # 共享内存(解决数据库连接问题)
/opt/gitlab目录,执行以下命令:docker-compose up -d
启动后可通过docker ps查看容器状态,确认gitlab容器处于Up状态。若未使用Docker Compose,可通过以下命令直接运行容器:
docker run -d \
--name gitlab \
--restart always \
-p 8080:80 \
-p 2222:22 \
-v /opt/gitlab/config:/etc/gitlab \
-v /opt/gitlab/logs:/var/log/gitlab \
-v /opt/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
说明:将/opt/gitlab替换为你准备的存储目录,端口可根据实际情况调整。
http://<服务器IP>:8080(若修改了端口则替换为对应端口),进入GitLab登录页面。root,密码可通过以下命令获取:docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
输入密码后,系统会提示修改密码(建议设置为复杂密码)。docker exec -it gitlab vim /etc/gitlab/gitlab.rb
找到external_url配置项,修改为你的域名或IP(如external_url 'http://192.168.1.100'),保存后重载配置:docker exec -it gitlab gitlab-ctl reconfigure
/etc/gitlab/ssl目录,修改gitlab.rb中的external_url为https://开头,并配置SSL证书路径,最后重载配置。volumes配置的宿主机目录存在且有读写权限,避免容器删除后数据丢失。docker-compose.yml或docker run中的端口映射(如将8080:80改为8090:80)。docker stats命令查看)。