Команда Dockerfile COPY
может ссылаться только на файлы в контексте - текущее местоположение Dockerfile, также известное как .
, поэтому у вас есть несколько вариантов:
, еслиможно скопировать содержимое каталога / home / ubuntu / authentication / workspace / куда-нибудь внутри вашего проекта перед сборкой (так что теперь он будет включен в ваш контекст Dockerfile и вы сможете получить к нему доступ через COPY ./path/to/content /home/ubuntu
), это может быть здорово,но иногда вы этого не хотите.
вместо копирования каталога, привяжите его к вашему контейнеру через том:
при запускеВ контейнер добавьте опцию -v
:
docker run [....] -v /home/ubuntu/authentication/workspace:/home/ubuntu [...]
, помните, что том спроектирован так, что любое изменение, внесенное вами в директорию контейнера (/ home / ubuntu), повлияет на связанный каталог на стороне вашего хоста (/home / ubuntu / аутентификация / рабочая область) и наоборот.
я нашел что-то сверх здесь : этот парень заставляет Dockerfile принять его контекст - он сидит в каталоге / home / ubuntu / authentication / workspace / и запускается там
docker build . -f /path/to/Dockerfile
, поэтому теперь внутри своего Dockerfile он может ссылаться на / home / ubuntu / authentication / workspace как свой контекст (.
)