我有一个简单的Dockerfile来将python需求构建到一个zip文件中,然后上传到AWS Lambda。
FROM amazonlinux:2.0.20221004.0
RUN yum install -y python37 && \
yum install -y python3-pip && \
yum install -y zip && \
yum clean all
RUN python3.7 -m pip install --upgrade pip && \
python3.7 -m pip install virtualenv
COPY aws_requirements.txt .
RUN pip install -r aws_requirements.txt -t ./python
RUN zip -r python.zip ./py
是否有一种方法可以在dockerfile期间将python.zip从映像复制到主机?
发布于 2022-11-09 13:42:13
使用buildkit,您可以将结果输出到主机上的目录,而不是推送到注册表。因此,您可以将zip文件放在一个划痕图像中,然后输出如下:
FROM amazonlinux:2.0.20221004.0 as build
RUN yum install -y python37 && \
yum install -y python3-pip && \
yum install -y zip && \
yum clean all
RUN python3.7 -m pip install --upgrade pip && \
python3.7 -m pip install virtualenv
COPY aws_requirements.txt .
RUN pip install -r aws_requirements.txt -t ./python
RUN zip -r /python.zip ./py
FROM scratch as artifact
COPY --from=build /python.zip /python.zip
然后跑:
docker build --output type=local,dest=out .
将创建一个out/python.zip
文件。
https://stackoverflow.com/questions/74381582
复制相似问题