如何共享无源的多容器docker-compose应用

时间:2019-06-07 16:33:55

标签: .net docker .net-core compose

我想打包一个多容器应用程序,供其他人使用docker桌面在其计算机上运行。

  • 服务是.net Core Web API的
  • 我有一个docker-compose,可以正确地进行多阶段构建以生成最终的容器,并且可以在我的机器上运行。
  • 我有几个用于自签名证书之类的卷挂载,它们应该映射到linux容器中并可以工作。

我想给他提供他需要的图像,也许是docker-compose文件,以便他可以在没有系统拉动和dotnet SDK构建的情况下运行这些图像。基本上,我只是希望他能够运行完整的图像。

我已经尝试了docker export和docker save方法。但是看来,即使我摇动docker-compose.yml文件仅指向Imagename:latest并复制到另一台机器并运行docker-compose,它也会启动容器而不会出现错误,但它们不会显示为“ docker ps” 。很好奇,我尝试以交互方式运行一个,并查看了app \文件夹,在该文件夹中,构建映像的dockerfile应该已经复制了代码,但是我在那里找不到任何DLL。我真的很困惑dockerfile在导出/导入图像或运行容器时的角色。

(注意:我也不想使用注册表或docker hub-我很高兴将保存的图像导出到文件共享,以便他可以将其导入到他的docker桌面。这只是本地的无论如何都可以。)

我开始考虑要做的方法是将正在运行的容器快照到映像并将其保存(希望它具有在运行dockerfile时复制到./app的所有文件),然后启动它。我也不清楚入口文件是否从dockerfile放入时继承,还是我必须在目标计算机的docker-compose中重新指定它。

我在网络上阅读了非常愚蠢的资料,读得越多,我就越迷失和困惑,我所认为的是码头工人的优势:共享容器!

0 个答案:

没有答案