首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >来自一个docker文件的多个python图像

来自一个docker文件的多个python图像
EN

Stack Overflow用户
提问于 2021-03-16 00:12:15
回答 2查看 88关注 0票数 0

我们使用了一个dockerfile来配置python version X。dockerfile在circle ci中用于构建镜像,然后推送到gcr。我想创建python version Y的另一个映像。问题是我应该放在同一个dockerfile中还是放在一个单独的dockerfile中。

如果它在同一个dockerfile中,那么我如何触发不同的构建?我正在查看this answer,这让我感到困惑,我想我可以在第一行标记映像,即FROM gcr.io/google-appengine/python:2019-08-07-184603 as python2.7,我如何确保构建此映像的某些命令针对它运行,然后其他命令针对python3.7映像运行。

附言:如果我不需要使用docker-compse,我会更喜欢。

EN

回答 2

Stack Overflow用户

发布于 2021-03-16 00:44:14

下面是一个示例,说明您如何

代码语言:javascript
运行
复制
FROM gcr.io/google-appengine/python:2019-08-07-184603 as python2.7

RUN echo "python2.7"


FROM python:3.9.2-slim as anotherpython

RUN echo "anotherpython"

对于create python2.7;

代码语言:javascript
运行
复制
docker build -t tag --target python2.7 .

用于创建另一个python版本;

代码语言:javascript
运行
复制
docker build -t tag --target anotherpython .
票数 0
EN

Stack Overflow用户

发布于 2021-03-16 00:45:16

据我所知,您希望创建两个不同的映像(一个使用python2.7,另一个使用3.7),但Dockerfile的其余部分基本上是相同的。然后,您希望将这些映像用于CI/CD管道的不同阶段。

您应该创建两个不同的Dockerfile,因为您正在创建两个不同的镜像。一个是基于python2.7的图像,另一个是基于python3.7的图像。当您创建这些图像时(docker build命令),您应该使用-t选项为这些图像添加您想要赋予它们的名称。然后,您可以将这些映像推送到gcr,并使用它们的名称在CD/CD阶段中使用它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66641633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档