使用Docker交付软件更新

我正在使用docker-compose在本地(离线networking)上运行多容器软件。 在没有直接连接到Dockerregistry的情况下提供软件更新的最佳方式是什么?

我尝试了2个选项(两者都不够):1.提交使用docker save创build的完整Docker镜像。 非常低效 – 每个图像高于1GB,没有图层优化。 2.除Docker镜像外还提供定制软件,并将其映射到通用容器内的主机卷上。 通过这种方式,我可以只提供自定义软件更新,并减less需要更新Docker映像的时间。 然而这远非最佳。

有没有办法只提供更新的Docker图层作为文件的自定义软件? 任何其他的想法?

谢谢,梅尔

你有几个select:

  • 在专用networking中设置私人registry,并让服务器使用它
  • 使用洪stream协议更快,请参阅Docket项目
  • 如果没有,gzip保存使用 – --rsyncable选项,并使用rsync而不是scp
  • 使用docker-slim减less您的最终图像大小

我希望以上几种方法的组合应该足够好。