tmaier/docker-compose Docker 镜像
包含Docker和Docker Compose的容器,适用于CI(持续集成)环境,便于在CI流水线中使用"Docker in Docker"功能。
Docker Compose
镜像概述和主要用途
此Docker镜像在docker镜像基础上安装了docker-compose。对于使用"Docker in Docker"的CI流水线非常有用,可简化CI环境中容器化应用的构建和部署流程。
此Docker镜像已弃用
由于https://hub.docker.com/_/docker现已包含Docker Compose,因此本镜像已弃用。这一变更由https://github.com/docker-library/docker/pull/361引入。
支持的Docker版本
此处支持的Docker Compose版本使用与其兼容的最新Docker版本。所有可用的Docker Engine版本及对应的Docker Compose版本在DOCKER_AND_COMPOSE_VERSION_MATRIX中定义。
如果缺少某个版本,请在https://github.com/tmaier/docker-compose提交issue或pull request(推荐)。
注意: 过去,此Docker镜像(标签)以Docker版本为重点(例如latest、20.10、19.03和19)。但随着Docker发布的破坏性降低,标签策略已更改为使用Docker Compose版本。
使用场景和适用范围
主要适用于CI/CD流水线环境,特别是需要在容器中运行Docker和Docker Compose命令的场景,如GitLab CI、Jenkins等持续集成平台。
使用方法和配置说明
GitLab CI使用说明
您可以在.gitlab-ci.yml文件中按如下方式使用:
yamlimage: docker.xuanyuan.run/tmaier/docker-compose:latest services: - docker:dind before_script: - docker info - docker-compose --version build image: stage: build script: - docker-compose build
如何为此仓库添加对新版本Docker的支持?
您只需为文件DOCKER_AND_COMPOSE_VERSION_MATRIX提交Pull Request。DOCKER_AND_COMPOSE_VERSION_MATRIX的第一列指定Docker版本,第二列说明该Docker版本发布时最新的docker-compose版本。
您可以通过查看以下发布说明获取两者的最新匹配版本:
- https://github.com/docker/docker-ce/releases 或 https://hub.docker.com/_/docker
- https://github.com/docker/compose/releases
常见问题及解决方法
ERROR: error during connect: Get http://docker:2375/v1.40/info: dial tcp: ...
从19.03版本开始,docker:dind会自动生成TLS证书并要求使用证书进行通信。
详见https://github.com/tmaier/docker-compose/issues/21#issuecomment-578780163
作者
Tobias L. Maier(代表BauCloud GmbH)
镜像拉取方式
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
轩辕镜像加速拉取命令点我查看更多 docker-compose 镜像标签
DockerHub 原生拉取命令
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务