You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

能否使用基于Ubuntu而非Alpine的docker:dind?GitLab CI镜像构建问题

解决GitLab CI中docker:dind Alpine系统apt-get找不到的问题

直接使用官方维护的基于Ubuntu的docker:dind镜像即可,镜像标签带有ubuntu后缀,对应不同Ubuntu版本(如22.04、20.04)。

具体配置示例

修改你的.gitlab-ci.yml,将基础镜像和dind服务替换为Ubuntu版本:

stages:
  - build

build-image:
  stage: build
  image: docker:24.0.6-ubuntu22.04
  services:
    - name: docker:24.0.6-dind-ubuntu22.04
      alias: docker
  variables:
    DOCKER_HOST: tcp://docker:2376
    DOCKER_TLS_CERTDIR: "/certs"
    DOCKER_TLS_VERIFY: 1
    DOCKER_CERT_PATH: "$DOCKER_TLS_CERTDIR/client"
  before_script:
    # 现在可以正常使用apt-get
    - apt-get update && apt-get install -y --no-install-recommends curl git
    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
  script:
    - docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA .
    - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA

关键说明

  • 镜像标签格式为docker:<docker版本>-dind-ubuntu<ubuntu版本>,可以根据需要选择对应版本(比如docker:23.0.6-dind-ubuntu20.04)
  • 执行apt-get前务必先运行apt-get update,避免源缓存过期导致安装失败
  • 保持DOCKER相关变量的配置,确保dind服务能正常通信

内容的提问来源于stack exchange,提问作者brucezepplin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 15:10:23