Docker - копирование файлов из внешних расположений на хост-машине в контейнеры - PullRequest
0 голосов
/ 28 апреля 2019

Мне нужно протестировать программное обеспечение моей команды на паре разных типов ОС, и я решил использовать Docker, чтобы помочь.

Что я по сути хочу сделать, так это проверить дерево нашего репо в каком-то центральном месте. Затем я хочу иметь несколько контейнеров разных типов os, которые копируют это дерево git в свою корневую папку при сборке. Причина этого в том, что я хочу, чтобы все контейнеры всегда тестировали один и тот же патч программного обеспечения.

Вот как я настраиваю структуру каталогов док-контейнера:

docker_containers/
    GIT_TREE/
    container_ubuntu14/
        git_tree/ (symbolic link to ../GIT_TREE)
        build.sh  (docker build commands specific to this os type)
        Dockerfile
        run.sh (docker run commands for use post build)
    container_ubuntu18/
        git_tree/ (symbolic link to ../GIT_TREE)
        build.sh  (docker build commands specific to this os type)
        Dockerfile
        run.sh (docker run commands for use post build)
    container_centos7/
        git_tree/ (symbolic link to ../GIT_TREE)
        build.sh  (docker build commands specific to this os type)
        Dockerfile
        run.sh (docker run commands for use post build)

Итак, как вы можете видеть, у каждого типа контейнера есть символическая ссылка, указывающая назад на главный каталог, где проверено мое git-дерево. Для каждого экземпляра в Dockerfile есть строка COPY git_tree /. Я пытаюсь скопировать символическую ссылку в корневой каталог нового контейнера, и каждый раз получаю следующую ошибку:

COPY failed: stat /home/user/docker_fs/tmp/docker-builder474024999/home/user/docker_containers/GIT_TREE: no such file or directory

1 Ответ

0 голосов
/ 29 апреля 2019

Должно ли это быть GIT_TREE вместо GIT-TREE?

...