Как скопировать папку с докера на хост при настройке собственного образа - PullRequest
0 голосов
/ 17 ноября 2018

Я пытаюсь создать свой собственный образ Docker. В результате после этого в контейнере создается папка archive . И мне нужно автоматически скопировать эту папку archive на мой хост. Что важно, я должен настроить этот процесс перед созданием изображения в моем файле Docker. Ниже вы можете увидеть, что уже есть в моем файле Docker:

FROM python:3.6.5-slim
RUN apt-get update && apt-get install -y gcc && apt-get autoclean -y
WORKDIR /my-tests
COPY jobfile.py testbed.yaml requirements.txt rabbit.py ./
RUN pip install --upgrade pip wheel setuptools && \
    pip install --no-cache-dir -r requirements.txt && \
    rm -v requirements.txt
VOLUME /my-tests/archive
ENV TINI_VERSION v0.18.0
ADD  https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini
RUN chmod +x /tini
ENTRYPOINT ["/tini","--"]
CMD ["easypy", "jobfile.py","-testbed_file","testbed.yaml"]

1 Ответ

0 голосов
/ 20 ноября 2018

Во время работы контейнера сопоставьте любую папку на хосте с папкой архива контейнера, используя -v /usr/host_folder:/my-tests/archive.Любая вещь, созданная внутри контейнера в / my-tests / archive, теперь будет доступна в / usr / host_folder на хосте.

Или используйте следующую команду для копирования файлов с помощью scp.Вы можете создать скрипт, который сначала запускает контейнер, а затем запускает команду docker exec.

docker exec -it <container-name> scp /my-tests/archive <host-ip>:/host_path -r
...