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

Как импортировать данные в экземпляр MariaDB, работающий в контейнере Docker?

Я настраиваю сервер для размещения сайта WordPress, и у меня очень хорошо работают wordpress + mariadb + nginx в Docker. Я могу создать и настроить новый сайт в Wordpress, и все будет успешно.

Я хотел бы импортировать некоторые уже существующие данные сайта в экземпляр Mariadb, и поскольку он находится в контейнере Docker, он эффективно изолирован от любых утилит для работы с данными. Очевидно, что это здорово для безопасности, но как лучше всего сделать что-то в докере «видимым» для localhost (или даже извне), чтобы я мог подключить клиент mysql?

Вы можете опубликовать свой порт MariaDB, запустив:

docker run -p3306:3306 mariadb

Таким образом, вы можете получить доступ к экземпляру mariadb, подключившись к dockerhost:3306.

В любом случае, если вам нужно импортировать только файлы данных sql, я предлагаю вам использовать докер exec утилита и использование контейнера mysql клиент для импорта этих данных. Например:

docker exec -i mariadb_container mysql -uroot -pmypassword mydb < /path/inside/host/data.sql