Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于跨平台环境的Docker组装_Docker_Docker Compose_Docker Image - Fatal编程技术网

基于跨平台环境的Docker组装

基于跨平台环境的Docker组装,docker,docker-compose,docker-image,Docker,Docker Compose,Docker Image,假设我有一个跨平台的环境 我的应用部署了两次—一次在windows容器上,一次在Linux容器上 此外,我还有一个DB容器(Linux) 我可以使用docker compose构建这3个服务吗 我认为不是——因为我使用的映像是为特定的操作系统类型构建的 我说得对吗?也许我错了,这有一个解决办法?使用2.4版编写文件支持平台选项,该选项允许指定服务的平台 platform: osx platform: windows/amd64 platform: linux/arm64/v8 应该注意的是,

假设我有一个跨平台的环境

我的应用部署了两次—一次在windows容器上,一次在Linux容器上

此外,我还有一个DB容器(Linux)

我可以使用docker compose构建这3个服务吗

我认为不是——因为我使用的映像是为特定的操作系统类型构建的


我说得对吗?也许我错了,这有一个解决办法?

使用2.4版编写文件支持
平台
选项,该选项允许指定服务的平台

platform: osx
platform: windows/amd64
platform: linux/arm64/v8

应该注意的是,v3 compose文件不支持
平台
选项


这里可以找到更深入的解释:

仅使用
docker compose
文件是不可能的,因为您不能在同一台机器上运行Windows和Linux的映像,解决方案可能是使用
docker machine
创建Linux虚拟机或类似的东西,但无论如何,你不能通过docker或类似的东西链接吗。。。你必须使用docker之外的网络来解决这个问题。这篇文章没有回答这个问题,但应该证明是有用的: