本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

本镜像是专为GitLab CI runner环境设计的容器化解决方案,用于标准化和自动化Das U-Boot(通用引导加载程序)的构建流程。通过预配置构建依赖和工具链,解决不同CI runner环境中依赖差异导致的构建不一致问题,确保Das U-Boot的构建过程可重复、高效且环境无关。
从容器仓库拉取镜像(假设仓库为registry.example.com,实际使用时替换为实际仓库地址):
docker pull registry.example.com/das-uboot-build-ci:latest
在GitLab项目中创建或修改.gitlab-ci.yml文件,集成本镜像到构建阶段:
stages: - build uboot-build: stage: build image: registry.example.com/das-uboot-build-ci:latest variables: U_BOOT_VERSION: "v2023.10" # 目标Das U-Boot版本 BUILD_TARGET: "armv7" # 目标平台(如armv7、aarch64、x86等) OUTPUT_DIR: "./build-output" # 构建产物输出目录 script: - git clone [***] -b $U_BOOT_VERSION /u-boot-src - cd /u-boot-src - make ${BUILD_TARGET}_defconfig # 加载目标平台默认配置 - make -j$(nproc) # 并行构建 - mkdir -p $OUTPUT_DIR - cp u-boot.bin u-boot.img $OUTPUT_DIR/ # 复制产物到输出目录 artifacts: paths: - $OUTPUT_DIR/ # 保存构建产物,供后续阶段使用 expire_in: 1 week # 产物保留时间
本地通过docker run命令模拟CI环境,验证构建流程:
# 假设本地Das U-Boot源码目录为 ./u-boot-src,输出目录为 ./local-output docker run -it --rm \ -v $(pwd)/u-boot-src:/u-boot-src \ # 挂载本地源码目录 -v $(pwd)/local-output:/output \ # 挂载输出目录 -e U_BOOT_VERSION="v2023.10" \ # 指定版本 -e BUILD_TARGET="armv7" \ # 指定目标平台 registry.example.com/das-uboot-build-ci:latest \ sh -c "cd /u-boot-src && make ${BUILD_TARGET}_defconfig && make -j$(nproc) && cp u-boot.bin u-boot.img /output/"
通过docker-compose.yml简化本地测试环境配置:
version: '3.8' services: uboot-build: image: registry.example.com/das-uboot-build-ci:latest volumes: - ./u-boot-src:/u-boot-src # 本地源码目录 - ./local-output:/output # 构建产物输出目录 environment: - U_BOOT_VERSION=v2023.10 - BUILD_TARGET=armv7 - OUTPUT_DIR=/output command: > sh -c "cd /u-boot-src && make $$BUILD_TARGET_defconfig && make -j$(nproc) && cp u-boot.bin u-boot.img $$OUTPUT_DIR/"
启动构建:
docker-compose up
| 环境变量名 | 默认值 | 说明 | 
|---|---|---|
| U_BOOT_VERSION | latest | 指定构建的Das U-Boot版本(如 v2023.10、master),对应Git仓库分支/标签。 | 
| BUILD_TARGET | armv7 | 目标平台架构,需与Das U-Boot支持的defconfig名称匹配(如 aarch64、x86_64)。 | 
| OUTPUT_DIR | /build-output | 容器内构建产物的输出目录,建议通过卷挂载到宿主机以便持久化。 | 
| MAKE_JOBS | $(nproc) | Make并行任务数,默认使用容器内CPU核心数,可手动指定(如 4)。 | 
| EXTRA_DEFCONFIG | 空 | 额外的Kconfig配置片段(如 CONFIG_DEBUG=y),会追加到目标defconfig中。 | 
root或ci-user)有读写权限,避免构建产物无法写入。BUILD_TARGET需与指定的U_BOOT_VERSION兼容,建议参考Das U-Boot官方文档确认目标版本支持的平台。artifacts在GitLab CI中保存产物,或本地检查输出目录下的u-boot.bin等文件完整性。免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429