alpinelinux/gitaly本镜像为基于Alpine Linux的Gitaly容器化实现。Gitaly是GitLab生态系统中的核心后台服务组件,专门负责处理Git操作的执行与管理,通过集中化Git命令处理提升GitLab实例的性能、稳定性和可扩展性。Alpine Linux基础确保镜像具备轻量级、安全强化及资源高效的特性。
| 环境变量 | 描述 | 示例值 |
|---|---|---|
GITALY_CONFIG_FILE | Gitaly配置文件路径 | /etc/gitaly/config.toml |
GITLAB_SHELL_SECRET_TOKEN | 与GitLab Shell通信的密钥 | your-shell-secret-token |
DATABASE_URL | GitLab数据库连接URL | postgresql://user:pass@db:5432/gitlabhq_production |
GITALY_PROMETHEUS_LISTEN_ADDR | Prometheus指标暴露地址 | 0.0.0.0:9236 |
LOG_LEVEL | 日志级别(debug/info/warn/error) | info |
bashdocker run -d \ --name gitaly \ --network gitlab-network \ -p 8075:8075 \ -v /path/to/gitaly/config.toml:/etc/gitaly/config.toml \ -v /path/to/git/repositories:/var/opt/gitlab/git-data/repositories \ -e GITALY_CONFIG_FILE=/etc/gitaly/config.toml \ -e GITLAB_SHELL_SECRET_TOKEN=your_secret_token \ -e DATABASE_URL=postgresql://user:pass@gitlab-db:5432/gitlabhq_production \ gitaly:alpine
yamlversion: '3.8' services: gitaly: image: gitaly:alpine container_name: gitlab-gitaly restart: always networks: - gitlab-network ports: - "8075:8075" - "9236:9236" # Prometheus指标端口 volumes: - ./gitaly/config.toml:/etc/gitaly/config.toml:ro - gitlab-data:/var/opt/gitlab/git-data - gitlab-logs:/var/log/gitaly environment: - GITALY_CONFIG_FILE=/etc/gitaly/config.toml - GITLAB_SHELL_SECRET_TOKEN=${GITLAB_SHELL_SECRET_TOKEN} - DATABASE_URL=postgresql://${DB_USER}:${DB_PASS}@gitlab-db:5432/${DB_NAME} - LOG_LEVEL=info - GITALY_PROMETHEUS_LISTEN_ADDR=0.0.0.0:9236 networks: gitlab-network: external: true volumes: gitlab-data: gitlab-logs:
Gitaly主要通过配置文件(通常为config.toml)进行详细配置,核心配置项示例:
toml# 服务监听配置 listen_addr = "0.0.0.0:8075" prometheus_listen_addr = "0.0.0.0:9236" # Git配置 [git] bin_path = "/usr/bin/git" catfile_cache_size = *** # 1GB # GitLab Shell配置 [gitlab_shell] secret_file = "/etc/gitlab/gitlab-shell-secret" # 存储配置 [storage] name = "default" path = "/var/opt/gitlab/git-data/repositories" # 数据库配置 [database] db_host = "gitlab-db" db_port = 5432 db_user = "gitlab" db_password = "secure_password" db_name = "gitlabhq_production"
/var/opt/gitlab/git-data/repositories)的持久化存储配置,避免数据丢失tls_listen_addr及证书路径)





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务