来自Github repo的Docker构建上下文,带有子目录

amrnrhlw  于 2022-12-17  发布在  Git
关注(0)|答案(1)|浏览(125)

我尝试直接从github构建一个Docker上下文,其中Docker文件放置在子目录中。我收到错误failed to solve with frontend dockerfile.v0: failed to read dockerfile: failed to load cache key: subdir not supported yet。我使用的是Docker Desktop 4.3.1(72247)在Mac上,而且似乎是一个与BuildKit和Buildx有关的问题。我目前的Buildx版本是github.com/docker/buildx v0.7.1,我在这篇帖子中找到了(https://www.docker.com/blog/engineering-update-buildkit-0-9-and-docker-buildx-0-6-releases/)0.6版本支持git上下文中的子目录!有人遇到过类似的问题吗?
我曾尝试在DOCKER_BUILDKIT=0和COMPOSE_DOCKER_CLI_BUILD=1的情况下关闭BuildKit,但这会导致我的合成堆栈中的其他容器出现问题,并且在构建结束后,一些临时容器未被删除,从而导致创建的容器列表很长。
使用docker build https://$GITHUB_TOKEN@github.com/<my-repo>#develop:mysqldocker-compose版本进行测试:1.29.2, build 5becea4cdocker compose版本v2.2.1。它适用于放置在根目录中的dockerfile,因此访问级别有效,repo拼写正确。

yjghlzjz

yjghlzjz1#

我通过禁用Docker Desktop中的buildkit解决了这个问题。

  • 加载Docker桌面
  • 转到首选项
  • 转到Docker引擎
  • 编辑设置json.我的是
{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "features": {
    "buildkit": false
  }
}
  • 应用并重新启动

相关问题