
tdahuber/gitlab-ee本镜像为 gitlab/gitlab-ee 的镜像副本,在保留其原有功能的基础上,额外提供了更灵活的标签格式(major 和 major.minor)。主要用途是通过容器化方式部署 GitLab Enterprise Edition(以下简称 GitLab EE),提供企业级代码仓库管理、CI/CD 流水线、用户权限控制、项目协作等一站式开发平台能力。
major 标签(如 16,对应主版本)和 major.minor 标签(如 16.11,对应主-次版本),简化版本管理;gitlab/gitlab-ee 原有标签(如 latest、具体版本号 16.11.5-ee.0 等)。major 或 major.minor 标签锁定主版本,降低版本升级风险;16.11.5-ee.0),通过 16(major)或 16.11(major.minor)自动匹配最新补丁版本;| 标签格式 | 示例 | 说明 |
|---|---|---|
latest | latest | 对应上游 gitlab/gitlab-ee:latest |
major | 16 | 对应最新主版本(如 16.x.x-ee.0) |
major.minor | 16.11 | 对应最新主-次版本(如 16.11.x-ee.0) |
| 具体版本号 | 16.11.5-ee.0 | 同 gitlab/gitlab-ee 具体版本标签 |
bashdocker run -d \ --name gitlab-ee \ --hostname gitlab.example.com \ -p 443:443 -p 80:80 -p 22:22 \ -v /srv/gitlab/config:/etc/gitlab \ -v /srv/gitlab/logs:/var/log/gitlab \ -v /srv/gitlab/data:/var/opt/gitlab \ <镜像名称>:latest
major 标签(如主版本 16)bashdocker run -d \ --name gitlab-ee \ --hostname gitlab.example.com \ -p 443:443 -p 80:80 -p 22:22 \ -v /srv/gitlab/config:/etc/gitlab \ -v /srv/gitlab/logs:/var/log/gitlab \ -v /srv/gitlab/data:/var/opt/gitlab \ <镜像名称>:16 # 使用 major 标签(主版本 16)
major.minor 标签(如主-次版本 16.11)bashdocker run -d \ --name gitlab-ee \ --hostname gitlab.example.com \ -p 443:443 -p 80:80 -p 22:22 \ -v /srv/gitlab/config:/etc/gitlab \ -v /srv/gitlab/logs:/var/log/gitlab \ -v /srv/gitlab/data:/var/opt/gitlab \ <镜像名称>:16.11 # 使用 major.minor 标签(主-次版本 16.11)
创建 docker-compose.yml 文件,配置如下:
yamlversion: '3.8' services: gitlab-ee: image: <镜像名称>:16.11 # 指定 major.minor 标签 container_name: gitlab-ee restart: always hostname: gitlab.example.com ports: - "80:80" # HTTP 端口 - "443:443" # HTTPS 端口 - "22:22" # SSH 端口 environment: GITLAB_ROOT_PASSWORD: "StrongPassword123" # 初始管理员密码 EXTERNAL_URL: "[***]" # 外部访问 URL volumes: - /srv/gitlab/config:/etc/gitlab # 配置文件持久化 - /srv/gitlab/logs:/var/log/gitlab # 日志持久化 - /srv/gitlab/data:/var/opt/gitlab # 数据持久化
启动服务:
bashdocker-compose up -d
本镜像继承 gitlab/gitlab-ee 的所有配置参数,核心环境变量如下:
| 环境变量 | 说明 | 示例值 |
|---|---|---|
GITLAB_ROOT_PASSWORD | 初始管理员(root)密码 | "StrongPassword123" |
EXTERNAL_URL | GitLab 外部访问 URL(含协议) | "[***]" |
GITLAB_OMNIBUS_CONFIG | 额外配置参数(覆盖 gitlab.rb) | "gitlab_rails['time_zone'] = 'Asia/Shanghai'" |
DB_ADAPTER | 数据库适配器(默认 PostgreSQL) | "postgresql" |
REDIS_URL | Redis 连接地址(默认内置 Redis) | "redis://redis:6379/0" |
完整配置参数可参考 GitLab 官方文档。
config、logs、data 目录,避免容器重启后数据丢失;major 或 major.minor 标签时,重启容器会自动拉取对应版本的最新补丁,建议升级前备份数据;-p 8080:80)。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务