2017-06-12 89 views
0

我是docker新手,我有兩個運行在兩個容器中的微服務,我想爲它們創建簡單的數據庫。 我創造了它這樣的:docker運行mysql的最佳方式

docker run --net=kajsnetwork -d -e MYSQL_ROOT_PASSWORD='mypassword' -v /storage/mysql1/mysql-datadir:/var/lib/mysql mysql 

我進入使用

docker exec -it containernumber /bin/bash 

的容器,然後我創建的數據庫...但是當我去到/ var/lib中/ MySQL的MySQL的主機上我的天堂沒有新的東西 - 沒有我從docker文件創建的數據庫。我有什麼問題嗎?

我想有數據庫存儲在主機上的數據,但在docker容器中運行(這是很好的解決方案嗎?)?如何正確地做到這一點?

+0

我認爲,所有你需要做的是交換卷。第一條路徑來自主機。 – Rumid

回答

1

您不應該需要docker exec來創建一個實例:容器應該已經有一個實例。

的文檔中提到:

命令的-v /my/own/datadir:/var/lib/mysql部分從底層主機系統作爲/var/lib/mysql在容器內,在那裏的MySQL默認將寫入其數據文件掛載/my/own/datadir目錄

所以訂單很重要。