Docker - OS X forward localhost 22 порт для контейнера 2022 порт

60
6

Я использую Docker на своем Mac OSX.

У меня есть контейнер с открытым ssh демоном, слушая порт 22.

Виртуальная машина настроена на пересылку всего трафика порта 2022 машины на этот контейнер 22 порта.

Я хочу установить мое Localhost направить все 2022 трафика на машине 2022 порту.

Моя машина работает на 192.168.99.100

Я уже отправил весь HTTP-трафик на порту localhost 8080 на машину с использованием конфигурации виртуального хоста Apache и прокси.

Каков правильный способ сделать то же самое для ssh?

Я думаю, что это связано с SSH Tunneling, как упоминалось здесь, но я не понимаю, как я могу установить, что мой localhost всегда будет перенаправлять ssh-соединения с localhost:2022 на 192.168.99.100:2022

ps Я знаю, что контейнер-докер не должен содержать SSH, но мне нужно его для тестирования.

спросил(а) 2016-04-03T15:27:00+03:00 3 года, 10 месяцев назад
1
Решение
50

теперь я хочу подключиться между моим localhost: 2022 к машине: 2022

Затем вам понадобится ваша загрузочная виртуальная машина (созданная докер-машиной) для перенаправления портов 2022 на ваш MacOS-хост.
См. " Контейнер docker nginx, не получающий запрос извне, в качестве примера отказано подключение ".

VBoxManage controlvm "default" natpf1 "tcp-port2022,tcp,,2022,,2022"
VBoxManage controlvm "default" natpf1 "udp-port2022,udp,,2022,,2022"

Примечание. Это не относится к ssh конкретно, это связано только с тем фактом, что вы используете виртуальную машину в качестве хоста Linux, и вы что-то сопоставили с ее портом 2022.
Этот порт будет отображаться с вашего фактического локального хоста MacOS, только если вы его переадресовываете.

ответил(а) 2016-04-03T15:36:00+03:00 3 года, 10 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема