ℹ️ Бывают ситуации, когда нужно запустить контейнер без доступа в интернет, но при этом сохранить взаимодействие между контейнерами (например, в среде CI/CD, тестировании или для повышения безопасности).
-
🚫 1. Создаём кастомную сеть без выхода в интернет:
docker network create --internal no-internet❕ Опция
--internalзапрещает выход контейнеров в интернет. -
🐳 2. Запускаем контейнер внутри этой сети:
docker run -d --network no-internet --name isolated_container ubuntu -
🌐 3. Если нужно добавить ещё один контейнер, он сможет взаимодействовать с первым, но без выхода наружу:
docker run -d --network no-internet --name db postgres -
✔️ 4. Проверяем, что контейнеры "видят" друг друга, но не имеют интернета:
docker exec -it isolated_container ping -c 3 db docker exec -it isolated_container ping -c 3 8.8.8.8 # тут будет timeout
❔ Как временно дать интернет контейнеру?
docker network connect bridge isolated_container
Проверяем интернет:
docker exec -it isolated_container ping -c 3 8.8.8.8
После завершения работ снова изолируем:
docker network disconnect bridge isolated_container
✳️ Полезный трюк для продвинутого управления контейнерными сетями!
tags: #полезно #docker #сети
🧭 @recura_tech


