在Docker Compose文件中设置存储驱动程序

5

我需要使用overlay2驱动程序运行DinD docker镜像,因此通常会执行以下操作(如dind Hub页面所述):

docker run --privileged -d --name inner-docker docker:dind --storage-driver=overlay2

有没有一种方法可以在docker-compose.yml中设置存储驱动程序选项?
例如:
app-docker:
  container_name: inner-docker
  image: docker:dind
  privileged: true
  storage_driver: overlay2

我在组合文件文档中没有找到任何关于overlay的痕迹(这里只提到了它作为网络驱动程序)。

我尝试了storage_driverstorage-driver等类似的选项,但都没有成功。

这里讨论了一个同名选项,但对我来说似乎完全不同。

1个回答

8
当您运行以下代码时:
docker run --privileged -d --name inner-docker docker:dind --storage-driver=overlay2

你正在传递 docker:dind 参数 --storage-driver=overlay2,但没有在 docker run 中传递选项。因此,请使用以下命令:
app-docker:
  container_name: inner-docker
  image: docker:dind
  privileged: true
  command: --storage-driver=overlay2

你说得对。现在我明白了在 dind dockerd-entrypoint.sh 和其他 Dockerfiles 中的 $@ 的含义。 - Linuslabo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接