Docker

如何將數據導入在 Docker 容器中執行的 MariaDB 實例?

  • May 28, 2020

我正在設置一個伺服器來託管一個 wordpress 站點,並且我的 wordpress + mariadb + nginx 都在 Docker 中執行得很好。我可以在 Wordpress 中創建和配置一個新站點,並且一切都成功了。

我想將一些預先存在的站點數據導入 Mariadb 實例,因為它位於 Docker 容器中,因此它有效地與任何數據操作實用程序隔離。顯然這對安全性很有好處,但是讓 docker 中的某些東西對本地主機(甚至外部)“可見”的最佳方法是什麼,以便我可以連接 mysql 客戶端?

您可以通過執行以下命令發布您的 MariaDB 埠:

docker run -p3306:3306 mariadb

這樣您就可以通過連接到 mariadb 實例來訪問dockerhost:3306.

無論如何,如果您只需要導入 sql 數據文件,我建議您使用 dockerexec實用程序並使用容器mysql客戶端來導入該數據。例如:

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

引用自:https://serverfault.com/questions/1019091