Подключите локальный хост Mysql из ядра Docker .net

0

Я работаю с WebAPI в ядре.net в Docker. Я хочу развернуть этот API на экземпляре AWS EC2 с локальной базой данных mysql, работающей с другим веб-приложением.

Как я могу достичь этого Mysql изнутри докера?

Локально я могу сделать это, используя мой частный ip addres в

=> optionsBuilder.UseMySql(@"Server=$my_local_ip;database=db_name;uid=user;pwd=pass;");

Ho, чтобы определить, какой из $my_local_ip следует использовать для подключения к БД?

Но при использовании частного ip на EC2 я получил ошибку при отправке запроса, что он не может подключиться к любому хосту MYSQL.

Теги:
docker
amazon-web-services
amazon-ec2

2 ответа

1

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

  • 0
    Но этот Mysql не работает внутри докера. Как докер узнает, где искать этот порт?
0

Используйте --network=host флаг при запуске API контейнера Web и использовать localhost в вас строке подключения в качестве имени хоста. Это позволит контейнеру Docker получить доступ к сети хоста. Следовательно, вы можете получить доступ к базе данных MySQL из контейнера.

Примечание. Это небезопасно для работы с загруженными контейнерными рабочими нагрузками. Нажмите сюда, чтобы узнать больше

Ещё вопросы

Сообщество Overcoder
Наверх
Меню