我想創建一個已經填充數據的MySQL Docker鏡像。如何在構建時創建已填充的MySQL Docker鏡像
我要創建3層是這樣的:
|---------------------|---------------------|
Layer 3 | Customer 1 Database | Customer 2 Database |
|---------------------|---------------------|
Layer 2 | Database image with tables but no data |
|-------------------------------------------|
Layer 1 | mysql:5.6.26 |
|-------------------------------------------|
我的問題是現在如何爲第2層和3創建一個正確Dockerfile? 其中我的empty_with_tables.sql文件被加載到第2層,customer1.sql和customer2.sql被加載到第3層的兩個圖像中。我讀了一些關於將SQL文件放入'/docker-entrypoint-initdb.d'的內容。但這會導致數據在圖像首次啓動時出現。這不是我想要的。我希望數據能夠在圖像中準備好(例如在測試中快速提供)。
我可以啓動mysql映像,從命令行加載數據並執行「提交」,但這不是可重複的,需要在SQL文件中的數據更改時重新執行。
這怎麼辦?
最好的問候,
- 莫滕綠滿森
您能否提供更多信息?我也想這樣做。 – Telokis
@Morten Green請花時間分享您的工作,我們在這裏互相幫助。 – Dung