Клиент в контейнере в Docker
Клиент в контейнере выполняет
запросы внутри уже работающей
копии, не ставя программу
на компьютер.
Образ сервера уже содержит
утилиту mysql,
её вызывают через
exec у compose.
Сначала поднимают сервис
db с паролем root
demo без порта
наружу:
services:
db:
image: mysql:9.7
environment:
MYSQL_ROOT_PASSWORD: demo
Фоновый старт проекта выполняют так:
docker compose up -d
Затем в том же сервисе
запускают клиент с коротким
запросом к числу 1:
docker compose exec db mysql -uroot -pdemo -e "SELECT 1"
Запрос проходит: сервер принимает соединение и отвечает без ошибки доступа. Так проверяют, что копия действительно обслуживает команды SQL.
Поднимите сервис db на mysql:9.7 с паролем demo и выполните внутри короткий запрос к константе 2.
Отметьте, что ответ приходит без сообщения об отказе в доступе.