Я настраиваю сервер для размещения сайта 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