Это мои первые 2 часа, используя докер. Я импортировал изображение linux из centos 4.0.6 (требование проекта).Добавление файла хоста в контейнер докеров - от Dockerfile
Я понимаю, что есть другие вопросы, описывающие копирование файлов с хоста на контейнер докеров, но я хочу скопировать файл из узла в контейнер во время создания контейнера - например. через команду Dockerfile.
Моя причина попытки это выглядит следующим образом:
Так что мой Dockerfile должен оформить код с сервера SVN и построить затем выполнить скомпилированный код.
Соединение svn использует протокол svn + ssh. Поскольку пользователь в контейнере является root, я добавляю соответствующего пользователя ssh в файл ~/.subversion/config и не настраиваю StricthostKeyChecking.
В моем докере
в моем dockerfile:
RUN echo "[tunnels]" > ~/.subversion/config
RUN echo "ssh = ssh -l mysvnuser" >> ~/.subversion/config
RUN echo -e "Host svnserver.lan\n\tStrictHostKeyChecking no\n" >> /root/.ssh/config
RUN svn co svn+ssh://svnserver.lan/svn/bananas/branches/Ti_2.4 bananas
...
я получаю следующее сообщение об ошибке аутентификации SVN:
Warning: Permanently added 'svnserver.lan,192.168.1.8' (RSA) to the list of known hosts.
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,gssapi-with-mic,password).
svn: To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file.
svn: Network connection closed unexpectedly
Так что я знаю, что мне нужно добавить id_rsa mysvnuser в чтобы решить эту проблему, но будет ли svn использовать id_rsa из /root/.ssh или /home/mysvnuser/.ssh?
Кто-нибудь успешно передал файл с хоста докера в контейнер через файл Docker?
Посмотрите инструкции ADD и COPY в файле aDocker, см. Doc https://docs.docker.com/reference/builder/ – user2915097