Вопрос: Может ли кто-либо, имеющий доступ к хост-компьютеру, подключиться к сети Docker или службы, работающие в сети docker, видны только другим службам, работающим в сети Docker, при условии, что порты не отображаются?
Справочная информация: В настоящее время у меня есть веб-приложение с базой данных postgresql, где оба компонента проходят через docker на одном компьютере и только веб-приложение отображает порты на главном компьютере. У веб-приложения нет проблем с подключением к БД, так как они находятся в одной сети docker. Я собирался удалить пароль из своей базы данных, чтобы мне не приходилось хранить пароль на хосте и передавать его в контейнер веб-приложения в качестве секрета. Прежде чем сделать это, я хочу выяснить, насколько безопасна сеть docker.
Вот пример моей docker -композиции:
version: '3.3'
services:
database:
image: postgres:9.5
restart: always
volumes:
#preserves the database between containers
- /var/lib/my-web-app/database:/var/lib/postgresql/data
web-app:
image: my-web-app
depends_on:
- database
ports:
- "8080:8080"
- "8443:8443"
restart: always
secrets:
- source: DB_USER_PASSWORD
secrets:
DB_USER_PASSWORD:
file: /secrets/DB_USER_PASSWORD
Любая помощь приветствуется.