Saya mencoba menyalin file ke wadah buruh pelabuhan saya tetapi perintahnya gagal. File berada di direktori yang sama dengan Dockerfile, jadi saya tidak mengerti alasan kesalahannya.

Saya akan menghargai bantuan atau saran apa pun. Terimakasih sebelumnya.

Ini kodenya:

FROM ubuntu:20.04 as builder
ENV DEBIAN_FRONTEND=noninteractive 

RUN apt-get update
RUN apt-get install -y \
    build-essential \
    cmake \
    software-properties-common \
    libopencv-dev

RUN add-apt-repository -y ppa:chrberger/libcluon
RUN apt-get update
RUN apt-get install -y libcluon

ADD . /opt/sources
WORKDIR /opt/sources
RUN mkdir build && \
    cd build && \
    cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/tmp/dest .. && \
    make && make install


FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive 

RUN apt-get update --fix-missing
RUN apt-get install -y \
    libopencv-core4.2 \
    libopencv-imgproc4.2 \
    libopencv-video4.2 \
    libopencv-calib3d4.2 \
    libopencv-features2d4.2 \
    libopencv-objdetect4.2 \
    libopencv-highgui4.2 \
    libopencv-videoio4.2 \
    libopencv-flann4.2 \
    libopencv-dnn-dev \
    python3-opencv

WORKDIR /usr/bin
COPY --from=builder /tmp/dest /usr
COPY --from=builder yolov3-tiny_obj.cfg /params
ENTRYPOINT ["/usr/bin/opendlv-perception-helloworld"]
1
breana 28 Mei 2021, 20:01

1 menjawab

Jawaban Terbaik

Bisakah Anda menjelaskan baris mana di Dockerfile Anda yang menyebabkan pesan kesalahan?

Apakah file yang Anda coba salin dari direktori kerja Anda yolov3-tiny_obj.cfg?

Jika demikian, gagal karena Anda menentukan untuk menyalinnya dari tahap builder. Garisnya mungkin akan terlihat seperti ini:

COPY yolov3-tiny_obj.cfg /params
1
maweil 28 Mei 2021, 17:24