2015-08-20 2 views
0

Затмения Remote Systems вида является отличным инструментом для подключения к виртуальным машинам и изучить их файловые системы, в настоящее время доступны следующие опции:Как использовать представление «Удаленные системы» в Eclipse для изучения файловой системы контейнера Docker?

enter image description here

Сначала я узнать IP контейнер, выполнив команду:

docker inspect <container> | grep IPAddress | cut -d '"' -f 4 

После того, как у меня есть IP-адрес, я запустить New Connection мастера из Remote Systems зрения, я попытался выбрать Linux, SSH only и FTP only и в поле Hostname Я вставляю IP-адрес контейнера, нажмите «Готово», и соединение, похоже, будет успешно создано, теперь, когда я пытаюсь развернуть узел Files, он запрашивает пользователя и пароль, проблема в том, что у меня нет этой информации, пользователь/пропуск меняются от контейнера к контейнеру? как я могу получить эту информацию?

+0

У вас есть проигрыватель? Изображение докера, которое вы используете? Команды, используемые для запуска этого контейнера? – user2915097

+0

Я использую официальный образ 'node', команду, которую я использовал для загрузки:' docker run -d -p 80: 9080 -p 443: 9443 node' – CJ1

ответ

0

Вы можете просто создать экземпляр контейнера с этим изображением, но с оболочкой, чтобы вы могли видеть, какие имена пользователей настроены на этом изображении.

docker run -it node /bin/bash 

Вы можете настроить пользователей, пароль и сделать:

docker commit <image-name> my-node:0.1 

Тогда вы можете создать экземпляр нового контейнера:

docker run -d -p 80:9080 -p 443:9443 my-node 

ли ssh также работает в этом контейнере? Если нет, вам придется установить его в контейнер, чтобы вы могли ssh к нему.

0

Контейнер для докеров запускает только один родительский процесс за раз (на вашей главной машине этот родительский процесс является «init», который запускает кучу системных служб). В случае вашего контейнера-узла этот родительский процесс является узловым сервером.

Eclipse подключается к удаленному компьютеру, подключаясь к слушателю на этом компьютере с использованием какого-либо протокола. SSH FTP, например. В контейнере докеров нет процесса прослушивания этого соединения, поэтому вы не можете подключиться с помощью Eclipse, как есть. У вас есть два варианта ...

  1. Использование командной строки и docker exec для подключения к машине и исследовать его файловую систему. Нет симпатичных фотографий, но вам не нужно много знаний.

  2. Измените свой контейнер каким-либо образом, чтобы подключиться к нему. у вас есть два варианта ...

A. Измените свое изображение, чтобы запустить демон SSH. Простым способом сделать это является использование контейнера phusion/baseimage в качестве родителя и вызвать его как демона ssh, так и сервера узлов. Вы должны знать, сколько стоит linux sysadmin, чтобы получить эту работу (не много, но хорошая сумма).

B. Запустите вторую копию контейнера с другой командой, такой как ssh -d. Затем вы можете подключиться ко второй копии. Это имеет недостаток, что это не будет тот же контейнер, который вам интересен, и вы STILL должны изменить изображение, так как я сомневаюсь, что изображение узла даже имеет установленный демон ssh ... но это меньше знаний, чем обертывание вашего голова вокруг рунита.

+0

Спасибо, Paul, об этом «Затем вы можете подключиться к вторая копия ", как я могу это сделать? – CJ1

+0

Если у вас есть демон ssh, запущенный во второй копии, вам нужно будет: 1. Изложить IP-адрес этой копии и 2. установить eclipse для подключения к этому имени хоста. –

 Смежные вопросы

  • Нет связанных вопросов^_^