Как сделать Docker VPN шлюз для других Docker-контейнеров и стеков? - PullRequest
0 голосов
/ 22 ноября 2018

Мы внедряем инфраструктуру CI в виде стеков Docker.

Некоторым контейнерам в стеках теперь необходим доступ к внешним службам, доступным только через соединение OpenVPN, скажем, в подсети 192.168.2.0/24.

Чтобы контейнеры были как можно более "универсальными", в идеале мы хотели бы добавить контейнер Docker, выступающий в качестве шлюза VPN, через который другие контейнеры могли бы взаимодействовать с подсетью 192.168.2.0/24.

Сначала возникает сложность: для контейнеров VPN-клиентов необходимо cap-add из NET_ADMIN, которое недоступно в режиме роя, который мы используем для развертывания стека.Есть ли обходной путь, начиная с запуска контейнера клиента VPN как автономного до docker run?

И что еще более важно, когда у нас будет запущен и подключен контейнер vpnclient, как мы можем настроить другие контейнеры вРой, чтобы использовать его в качестве шлюза для доступа ко всем IP-адресам в подсети 192.168.2.0/24?

...