微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将两个 dockerfile 合二为一

如何解决将两个 dockerfile 合二为一

我有一个正在处理的自定义 docker 映像。 我创建的 dockerfile 以

开头
FROM ubuntu

现在,我想将 cadquery 添加到我的包中。 希望有一个 dockerfile 可以做到这一点。 这是:

FROM continuumio/miniconda3
RUN apt install -y libgl1-mesa-glx
RUN conda install conda-build
RUN apt-get install -y git
workdir /
RUN git clone https://github.com/cadquery/cadquery.git
workdir /cadquery
RUN conda env create -n cq -f environment.yml
RUN echo "source activate cq" > ~/.bashrc
ENV PATH /opt/conda/envs/cq/bin:$PATH
workdir /testing

(来源:https://github.com/RubenRubens/cq-testing/blob/master/Dockerfile

但是,如您所见,它使用的 FROM 命令与我的不同。 我想要做的是保留我的 dockerfile,然后以某种方式添加 conda 和 cadquery。

我对 continuumio/miniconda3 图像进行了一些研究,但我确定到底什么是最好的开始使用。

我知道您的 dockerfile 中可以有两个不同的 FROM 命令,但这是推荐的吗?

如果是,dockerfile的结构应该是怎样的?

如果没有,意味着不建议使用两个不同的 FROM 命令,我应该如何构建我的 dockerfile?

我应该使用 FROM ubuntu dockerfile,然后手动添加 conda,然后像我粘贴在这里的 dockerfile 一样继续吗?

编辑:我忘了说一件需要注意的重要事情,miniconda 是从您下载的 .sh 文件安装的 (来源:https://docs.conda.io/projects/conda/en/latest/user-guide/install/linux.html

所以我不确定是使用两个 FROM 命令(以及如何使用),还是只使用基本的 ubuntu 映像并下载 .sh效果最好。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。