Первоначально мой докер-контейнер мог подключаться к внешнему Интернету (это докер-сервис / контейнер, работающий на Amazon EC2).
Поскольку мое приложение представляет собой API, я следил за созданием своего контейнера (ему удалось вытащить все необходимые пакеты), обновив мои таблицы IP, чтобы направить весь трафик от порта 80 к порту, которым был мой API (работающий в Docker). слушаю дальше.
Затем, позже, когда я попытался восстановить контейнер, это не удалось. После долгой борьбы я обнаружил, что мой предыдущий шаг (настройка правила переадресации портов IPTable) испортил возможности внешней сети докера.
Решение. Остановите службу IPTable:
sudo service iptables stop
Перезапустите Docker Daemon:
sudo service docker restart
Затем попробуйте восстановить свой контейнер. Надеюсь это поможет.
Следовать за
Я полностью упустил из виду, что мне не нужно связываться с таблицами IP-адресов для пересылки входящего трафика на порт 80, на котором запущен API, работающий в докере. Вместо этого я просто связал порт 80 с портом, на котором работал API в Docker:
docker run -d -p 80:<api_port> <image>:<tag> <command to start api>
sysctl -w net.ipv4.ip_forward=1
(на Centos 6)