
本镜像包含GitHub官方命令行工具Hub,允许用户在容器环境中直接使用Hub命令与GitHub仓库进行交互。Hub作为GitHub的命令行扩展,提供了比原生git命令更丰富的GitHub特定功能,如创建/查看Pull Request、管理Issues、简化仓库克隆等操作,旨在简化开发者的GitHub工作流。
hub clone、hub pr、hub issue、hub fork等)~/.config/hub)或交互式输入实现GitHub认证repo、read:org、write:discussion等,根据使用场景配置)从Docker镜像仓库拉取(以github/hub为例,实际镜像名请以官方为准):
bashdocker pull github/hub:latest # 拉取最新版 # 或指定版本 docker pull github/hub:2.14.2
1. 验证镜像与Hub版本
bashdocker run --rm github/hub --version # 输出示例:hub version 2.14.2
2. 简化仓库克隆(Hub核心功能)
原生git克隆需完整URL,Hub支持owner/repo简化格式:
bash# 克隆github.com/octocat/hello-world到当前目录 docker run --rm -v $(pwd):/workspace -w /workspace github/hub clone octocat/hello-world
3. 认证配置(必选,执行写操作时)
方法1:通过环境变量传入GitHub令牌(推荐CI环境)
bash# 查看当前仓库的PR列表(需认证) docker run --rm -e GITHUB_TOKEN=ghp_your_pat_token github/hub pr list
方法2:挂载本地Hub配置文件(推荐本地开发)
本地已通过hub auth login配置的情况下,挂载配置目录:
bash# 本地配置路径通常为~/.config/hub docker run --rm -v ~/.config/hub:/root/.config/hub github/hub pr list
4. 常用命令示例
查看Pull Request列表
bashdocker run --rm -e GITHUB_TOKEN=ghp_your_token -v $(pwd):/workspace -w /workspace github/hub pr list # 输出示例: # 123 feature/login open User123 Add login feature # 122 bug/fix-crash open Dev456 Fix null pointer crash
创建新Issue
bashdocker run --rm -e GITHUB_TOKEN=ghp_your_token github/hub issue create \ --title "API文档缺失" \ --body "用户反馈/v1/users接口缺少参数说明,需补充"
检出远程PR到本地
bashdocker run --rm -v ~/.config/hub:/root/.config/hub -v $(pwd):/workspace -w /workspace github/hub pr checkout 123 # 将#123 PR检出为本地分支
创建docker-compose.yml简化日常使用:
yamlversion: '3.8' services: hub: image: github/hub:latest volumes: - ~/.config/hub:/root/.config/hub # 挂载本地认证配置 - ./workspace:/workspace # 挂载工作目录(可选) working_dir: /workspace # 设置工作目录(可选) environment: - GITHUB_TOKEN=ghp_your_pat_token # 环境变量认证(与挂载配置二选一) - HUB_CONFIG=/root/.config/hub # Hub配置文件路径(默认无需修改)
使用Compose执行操作:
bash# 列出当前仓库PR docker-compose run --rm hub pr list # 克隆仓库到workspace目录 docker-compose run --rm hub clone octocat/Spoon-Knife
文件权限处理
挂载本地目录时可能出现权限问题,可通过-u参数指定用户ID映射:
bash# 使用当前用户ID运行,避免容器内root用户创建文件导致本地权限问题 docker run --rm -u $(id -u):$(id -g) -v $(pwd):/workspace -w /workspace github/hub clone octocat/hello-world
交互式操作
部分Hub命令(如hub auth login)需要交互式输入,添加-it参数:
bashdocker run --rm -it -v ~/.config/hub:/root/.config/hub github/hub auth login
-u $(id -u):$(id -g)参数指定当前用户ID运行容器您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务