у меня есть сервер OpenVPN работает подвергая некоторые частные IP-адреса, я хотел бы, чтобы мои докер Рой услуги для доступа к этим адресам.
В идеале, не было бы клиента OpenVPN "внутри" контейнеров, поскольку образы, как ожидается, будут развернуты в среде, где VPN не потребуется.
то, что я пробовал до сих пор
я успешно подключил контейнер к моему VPN с помощью dperson / openvpn-client изображение.
я успешно запустил другой контейнер, используя этот контейнер в качестве сети, используя --net=container:my-vpn-client
флаг.
теперь Я пытаюсь создать docker service это будет доступ к моим частным IP-адресам и то, что я нашел:
- я не могу запустить клиент openVPN в сервисе, так как он не может быть дан
cap-add: NET_ADMIN
. Есть открытые проблемы с Docker, обсуждающие этот вопрос, но они все еще открыты. - я понял, что я возможно, контейнер клиента openVPN запускается "рядом" с кластером swarm, но я не могу использовать
network_mode: "container:my-vpn-client"
поскольку он не поддерживается и имеет смысл, так как я не мог заставить произвольный контейнер присутствовать на каждом узле Роя, не будучи самим сервисом. - я попытался создать присоединяемую сеть (мост/оверлей) и просто вставил в нее свой клиентский контейнер OpenVPN и ожидал, что волшебным образом другие члены этой сети пройдут через эту трубу... и я был разочарованный.
Итак, я здесь, есть идеи?
P. S. Если это может помочь, это в основном настроить автоматические тесты, которые будут выполняться службы на один докер машиной находитесь в рой, как рой инит >
стек развертывания > выполнить тесты > Рой отпуск. Так что, если есть "взломать" для этого... i мая будет интересно 😉