GitLab 私服(基于 Docker)搭建方案
整个过程将使用 Docker Compose,这样方便以后启动/停止/升级。
🚀 一、准备环境
- 安装 Docker Desktop
如果你还没安装:
- 下载地址:https://www.docker.com/products/docker-desktop
- 安装完成后确保:
- 启用 WSL2 后端(Windows 11 默认支持)
- 启动 Docker Desktop 并确认右下角图标为绿色 ✅
验证是否可用:
docker version
📁 二、创建 GitLab 目录结构
在 PowerShell 中执行以下命令:
mkdir D:\workspace\app\gitlab
mkdir D:\workspace\app\gitlab\config
mkdir D:\workspace\app\gitlab\logs
mkdir D:\workspace\app\gitlab\data
说明:
- config → 存放 GitLab 配置文件
- logs → 存放运行日志
- data → 存放仓库与数据库数据
🧱 三、创建 Docker Compose 文件
在 D:\workspace\app\gitlab 目录中创建文件:
📄 docker-compose.yml
内容如下 👇
version: '3.8'services:gitlab:image: gitlab/gitlab-ce:latestcontainer_name: gitlabrestart: alwayshostname: 'gitlab.local'environment:GITLAB_OMNIBUS_CONFIG: |external_url 'http://localhost'gitlab_rails['gitlab_shell_ssh_port'] = 2222ports:- '8000:80'- '443:443'- '2222:22'volumes:- 'D:/workspace/app/gitlab/config:/etc/gitlab'- 'D:/workspace/app/gitlab/logs:/var/log/gitlab'- 'D:/workspace/app/gitlab/data:/var/opt/gitlab'
说明:
- 访问网址:http://localhost
- SSH 克隆端口:2222
- 若你有自定义域名,可把 external_url 改为 http://gitlab.local 或你的内网 IP。
🐳 四、启动 GitLab 容器
在该目录下执行命令:
cd D:\workspace\app\gitlab
docker compose up -d
查看运行状态:
docker ps
输出示例:
CONTAINER ID IMAGE STATUS PORTS
xxxxxx gitlab/gitlab-ce:latest Up 3 minutes 0.0.0.0:8000->80/tcp, ...
🕐 五、等待初始化
GitLab 第一次启动会花 3~10 分钟初始化。
可以用命令查看进度:
docker logs -f gitlab
当看到:
GitLab now ready!
代表初始化完成 ✅
🌐 六、访问与登录
打开浏览器访问:
👉 http://localhost:8000
首次进入会要求设置管理员密码。
- 用户名:root
- 密码:你第一次设置的密码
登录后即可进入 GitLab 控制台。
⚙️ 七、修改外部访问地址(可选)
如果你打算用 IP 或自定义域名访问,比如:
http://192.168.1.100
修改配置:
编辑:
D:\workspace\app\gitlab\config\gitlab.rb
找到并修改:
external_url 'http://192.168.1.100'
保存后执行:
docker exec -it gitlab gitlab-ctl reconfigure
🔧 八、常用命令
| 操作 | 命令 |
|---|---|
| 启动 | docker compose up -d |
| 停止 | docker compose down |
| 重启 | docker restart gitlab |
| 查看日志 | docker logs -f gitlab |
| 进入容器 | docker exec -it gitlab bash |
| 重新加载配置 | docker exec -it gitlab gitlab-ctl reconfigure |
💾 九、备份与恢复
备份:
docker exec -t gitlab gitlab-backup create
备份文件路径:
D:\workspace\app\gitlab\data\backups
恢复:
docker exec -it gitlab gitlab-backup restore BACKUP=文件名
✅ 十、完成!
现在你就拥有了一个运行在 Windows 11 + Docker 上的 GitLab 私有仓库。
你可以直接通过浏览器访问和管理,也能通过 SSH 克隆(端口 2222)。
