Назад | Перейти на главную страницу

безопасная репликация mysql в контейнере docker с внешним сервером mysql

У меня есть докер-хост и контейнер mariadb, и я хочу применить репликацию между этим контейнером и другим сервером другого провайдера.

используя следующий пример ниже, я смог удаленно подключиться к контейнеру, но порт открыт для всего мира, что я не рекомендую

вот мой файл docker-compose.yml:

db02:
  build: .
  dockerfile: db02/Dockerfile
  container_name: db02
  dns:
    - 8.8.8.8
    - 8.8.4.4
  hostname: db02.local
  env_file:
    - db02/env
  ports:
    - "3306:3306"  

мой вопрос: как открыть порт mysql для одного ip и заблокировать его для всех остальных, есть ли что-нибудь вроде разрешения / запрета в docker-compose?

Вы более динамичны, когда используете iptables для защиты своего соединения:

iptables -A INPUT -p tcp --dport 3306 -s 1.2.3.4 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j DROP