Переадресация портов на экземпляр докера для rdp
Я установил докер на моей машине. На контейнере Ubuntu, который я использую, я установил все необходимое для удаленного рабочего стола через RDP. (например, xrdp,ightvncserver и т. д.). Даже удаленный рабочий стол с моего хоста на экземпляр докера работает нормально.
Теперь предположим, что я пытаюсь выполнить удаленный рабочий стол компьютера с другого удаленного компьютера. Могу ли я так или иначе настроить свою хост-машину так, чтобы она перенаправляла любое входящее соединение rdp на мой порт rdp экземпляра докера?
Другими словами, как я могу выполнить rdp с удаленного хоста на экземпляр Docker-контейнера моего целевого хоста?
2 ответа
Это должно сделать это, я не знаком с Docker и его конфигурацией, но это должно получить данные туда, куда вы хотите.
iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to-destination 10.10.0.5:3389
iptables -t nat -A POSTROUTING -p tcp -d 10.10.0.5 --dport 3389 -j SNAT --to-source 192.168.0.2
Похоже, вы хотите начать свой контейнер с помощью -p
docker run -p 3389 yourimage
от docker run --help
:
-p, --publish list Publish a container's port(s) to the host (default [])
Если вы установили программное обеспечение в работающий контейнер (вместо использования Dockerfile), то вы фактически использовали docker неправильно. Затем вы должны сначала создать изображение из запущенного контейнера, а затем запустить это изображение:
docker commit [OPTIONS] yourcontainer yourimage
docker run -p 3389 [OPTIONS] yourimage [COMMAND] [ARG...]