如何编写 Dockerfile 将两个或多个 docker 映像合并为一个?
Posted
技术标签:
【中文标题】如何编写 Dockerfile 将两个或多个 docker 映像合并为一个?【英文标题】:How can I write a Dockerfile to merge two or more docker images into one? 【发布时间】:2020-11-06 18:29:26 【问题描述】:我正在尝试将三样东西集成到一个 docker 映像中。
第一张图片是:https://github.com/opencv/gst-video-analytics
第二张图片是:https://github.com/domoritz/streamlit-docker
第三张图片是:http://blog.feabhas.com/2020/02/running-the-eclipse-mosquitto-mqtt-broker-in-a-docker-container/
有人可以指导我如何在 Windows 10 的 docker 上将这三个图像整合为一个吗?
Operating system: Windows 10
Docker version 19.03.1
【问题讨论】:
参见例如Docker: Combine multiple images或Is there a way to combine Docker images into 1 container?。无法以编程方式将多个图像合并为一个。 【参考方案1】:我对@987654321@ 做了类似的事情。您基本上只包含所有三个 Dockerfile
文件中的所有行,但只有一个 FROM
行。然后在错误出现时开始纠正错误。您可能会遇到一堆错误,因为 FROM
行不一样(一个是 Ubuntu,一个是 Alpine,所以您必须将 apk add
更改为 apt-get install
)。
您也可以考虑不为所有这些使用单个 Docker 容器并使用docker-compose
。它可以让您同时启动多个容器并链接它们的网络以便于访问。
【讨论】:
以上是关于如何编写 Dockerfile 将两个或多个 docker 映像合并为一个?的主要内容,如果未能解决你的问题,请参考以下文章