E:无法在多阶段Docker构建中找到软件包

时间:2018-10-12 05:10:10

标签: docker docker-compose

当我仅构建主映像时,将替换所有软件包。但是,一旦我将其转换为多阶段构建并到达RUN apt-get install -y python3-pip,我就会收到“ E:无法在多阶段Docker构建中找到软件包”

FROM gcc:8.2.0 as builder
# FROM ownyourbits/debiandev:latest

RUN apt-get update
# RUN apt-get install -y libxerces-c-dev automake cmake libboost-all-dev  build-essential
RUN apt-get install -y libxerces-c-dev automake cmake libboost-all-dev  build-essential
RUN git clone https://github.com/mypackage/mypackage-d.git
WORKDIR /mypackage-d/
RUN autoreconf -if
RUN ./configure --enable-silent-rules 'CFLAGS=-g -O0 -w' 'CXXFLAGS=-g -O0 -w' 'LDFLAGS=-g -O0 -w'
RUN make
RUN make install
RUN ls .

# Main Image
FROM library/python:3.7-stretch

COPY --from=builder /mypackage-d/mypackaged.bin /mypackage-d

RUN apt-get update
RUN apt-get install -y python3
RUN apt-get install -y python3-pip

RUN apt-get install -y postgresql-client

RUN apt-get install -y libxerces-c-dev

# For VIM
RUN apt-get install -y apt-file
RUN apt-file update
RUN apt-get install -y vim

RUN pip install --upgrade pip

COPY requirements.txt /
RUN pip3 install --trusted-host pypi.org -r /requirements.txt

WORKDIR /code

ENTRYPOINT ["/bin/bash", "start.sh"]

1 个答案:

答案 0 :(得分:0)

COPY --from=builder命令移到apt-get install和pip install语句下面对我有用。