Я новичок в технологии Docker и в настоящее время у меня возникла проблема с исходящим соединением из контейнеров.
Я внес изменения на хосте в соответствии с документацией:
net .ipv4.conf.all.forwarding = 1
и
iptables -P FORWARD ACCEPT
Хост - VM
cat /etc/os-release
NAME=“Oracle Linux Server”
VERSION=“7.5”
ID=“ol”
VERSION_ID=“7.5”
PRETTY_NAME=“Oracle Linux Server 7.5”
Docker:
docker version
Client: Docker Engine - Community
Version: 18.09.8-ol
API version: 1.39
Go version: go1.10.8
Git commit: 76804b7
Built: Fri Sep 27 21:00:18 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.8-ol
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 76804b7
Built: Fri Sep 27 20:54:00 2019
OS/Arch: linux/amd64
Experimental: false
Default Registry: docker.io
Я запускаю тестирование соединения busybox, главное приложение, которое должно работать, - Apache веб-сервер. Этот apache должен работать в качестве прокси-сервера для доступа к Tomcat, который находится на другой виртуальной машине.
Место назначения доступно с хоста, но в данный момент я не могу достичь чего-либо за пределами хоста из контейнера. Я могу достичь apache на открытом порту, но связь не покинет контейнер.
Я также заметил эту документацию
https://docs.docker.com/v17.09/engine/installation/linux/linux-postinstall/#ip-forwarding-problems
Но так как у меня есть OL, а не RHEL, это, вероятно, не применимо.
Если я запускаю busybox в сети хоста, все работает, но подключается к сети, чтобы запретить исходящее соединение. Я создал новую мостовую сеть, чтобы проверить наличие проблем по умолчанию, но эта пользовательская сеть не работает.
Может кто-нибудь указать мне, что еще можно сделать, чтобы выяснить, почему нет исходящего соединения из контейнеров?
Спасибо, М.