Как через SqlYog или другой системой управления базой данных , управлять базой которая находится в контейнере?
В Windows 10 начал использовать docker, для локальной разработки, нужно иметь доступ к MariaDb базе которая находится в контейнере через SqlYog или Navicat как это сделать ?
использую docker-compose.yml.
version: '3.7'
services:
app:
image: 'laravelapp'
ports:
- 8080:80
volumes:
- ./:/var/www/html
db:
image: library/mariadb:10.4.12
restart: always
ports:
- "33061:33061"
environment:
MYSQL_DATABASE: 'currency_api'
MYSQL_ROOT_PASSWORD: "secret"
volumes:
- ./db:/var/lib/mysql
Ответы (1 шт):
Автор решения: anemyte
→ Ссылка
Вот этот кусочек конфига:
ports:
- "33061:33061"
означает "пробросить порт 33061 хоста на 33061 контейнера". Однако MariaDB по-умолчанию работает на 3306 и если Вы не меняли конфиг БД, то получается что проброс портов ведет на порт, где ничто не слушает.
Нужно поменять порт контейнера в этом месте:
ports:
# хост:контейнер
- "33061:3306"
После чего БД должна быть доступна для хоста на localhost:33061.