開發者工具 · Docker run 到 Docker compose 轉換器
docker run 與 Compose 中的磁碟區:綁定掛載、命名磁碟區和 :ro
· 工作原理
碼頭工人 撰寫 卷
-v 標誌可以表示三種不同的意義,取決於冒號的其餘部分。這篇文章解釋了綁定掛載、命名捲和匿名卷,以及每個卷如何變成 YAML。
資料庫返回為空 - 容器已重新創建,並 -v 標誌從未引用磁碟上倖存的位置
資料庫傳回為空 — 容器已重新創建,且 -v 標誌從未引用磁碟上倖存的位置。證據:僅目標 -v 值是匿名的,並會收到持久性警告。使用一次性文字再現體積持久性。將每個來源事件與服務量和命名宣告配對;保留來源分類和路徑以供目的地審核。
卷事件也揭示了一個單獨的捲事件邊界是 --mount 被正確使用但報告為不受支援。證據:--mount 被正確使用,但報告為不受支持。此卷持久性約束是一個停止點。在沒有製造行為的情況下檢查服務磁碟區和命名宣告,然後記錄來源分類和路徑的主機檢查。
-v 的三種意義 — 絕對路徑(綁定掛載)、名稱(命名卷)或冒號前沒有任何內容(匿名卷)
-v 的三種意義 — 絕對路徑(綁定掛載)、名稱(命名卷)或冒號前沒有任何內容(匿名卷)。證據:簡單名稱、主機路徑、相對路徑、變數和 Windows 磁碟機的分類不同。將磁碟區持久性令牌追蹤到服務磁碟區和命名宣告中。將有序值與最後值欄位分開;來源分類和路徑不在集合中。
一個相關的捲機制邊界是一個單獨的捲語法邊界是 pgdata 和唯讀 init 綁定都保留文字卷字串。證據:pgdata 和唯讀 init 綁定仍然是文字卷字串。使用此磁碟區持久性事實來預測服務磁碟區和命名宣告中的一個成員或標量。在決定有關來源分類和路徑的任何內容之前檢查警告。
命名磁碟區需要宣告 - 頂層磁碟區:Compose 需要的鍵,以及缺少它時會發生什麼
命名磁碟區需要一個宣告 - 頂層磁碟區:Compose 需要的鍵,以及缺少它時會發生什麼。證據:命名來源在頂級卷中獲得空宣告。從其模型判斷卷持久化序列化。服務磁碟區和命名宣告中的參考可以保護類型,但不會提供來源分類和路徑的操作證明。
第二卷序列化觀察是單獨的捲輸出邊界是保留相關字串而不解析未來的 Compose 目錄。證據:保留相對字串而不解析未來的 Compose 目錄。此磁碟區持久性輸出將設定與不可用的上下文分開。保持服務捲和命名宣告可審查,並獨立檢查來源分類和路徑。
轉換器保留 -v 片語法並警告 --mount 必須手動翻譯
第二個冒號後面的選項 — ro、z 和 Z,以及 --mount 的 key=value 形式表示相同的事情。證據:--mount 被正確使用但報告為不受支援;轉換器保留 -v 短語法並警告 --mount 必須手動翻譯。在卷持久性異常處停止而不是猜測。服務磁碟區和命名宣告附近的任何新增都需要與來源分類和路徑相關的特定部署的原因。
另一個卷異常約束是,對於此卷部分,在此候選檔案旁邊保留此卷部分的原始命令和此卷部分的警告。證據:儲存庫沒有提供更廣泛的執行時間或歷史證據。將原始磁碟區持久性指令保留在警告旁邊。此比較顯示了哪些服務捲和命名宣告包含哪些內容以及哪些來源分類和路徑決策仍然是手動的。
工作範例:-v pgdata:/var/lib/postgresql/data 與 -v /srv/pg/init:/docker-entrypoint-initdb.d:ro — 皆為 Compose YAML 掛載
工作範例:-v pgdata:/var/lib/postgresql/data 與 -v /srv/pg/init:/docker-entrypoint-initdb.d:ro — 皆為 Compose YAML 掛載。從合成名稱建立卷持久性範例。使每個服務捲和命名宣告項目都可追溯,而無需暴露生產來源分類和路徑詳細資訊。
相同的磁碟區範例範例示範了單獨的磁碟區範例邊界是磁碟區清單使持久性假設可審查。證據:卷單使持久性假設可以審查。配對的磁碟區持久性事實應該在服務捲和命名宣告中可見。記錄該行並避免有關來源分類和路徑的假設。
相對路徑意義取決於最終的 Compose 檔案位置;轉換器無法解決它
相對路徑 — 在 Compose 中允許相對於檔案,但在 docker run 中不允許,這就是為什麼 ./ 僅在轉換後出現。證據:保留相對字串而不解析未來的 Compose 目錄;相對路徑意義取決於最終的 Compose 檔案位置;轉換器無法解決它。將磁碟區持久性結果轉換為可觀察的服務捲和命名宣告差異。 Docker 擁有後來的來源分類和路徑判定。
卷結果實現還顯示,對於該卷部分,保留該卷部分的原始命令和警告,對於該卷部分,該候選檔案,該卷結果事實定義了該卷部分的瀏覽器對此卷部分貢獻的內容,docker仍然擁有捲結果執行時判決,對於該卷部分,操作員仍然擁有捲結果安全策略,對於該卷部分存儲庫仍然需要刪除卷結果秘密,對於該卷部分,保留這些責任,當對於描述產生的服務的該卷部分時,這些責任是分開的。分割磁碟區持久性職責:轉換寫入服務磁碟區和命名宣告,儲存庫刪除機密,操作員驗證來源分類和路徑。
這不包括什麼 — 磁碟區驅動程式、NFS 支援的捲和 tmpfs 掛載,它們有自己的密鑰
這不包括磁碟區驅動程式、NFS 支援的磁碟區和 tmpfs 掛載,它們有自己的金鑰。證據:--tmpfs 單獨映射,而磁碟區驅動程式需要手動設定。將磁碟區持久性範圍限制為此處顯示的服務磁碟區和命名宣告分支。相鄰表單和預設值無法回答來源分類和路徑問題。
另一個磁碟區範圍限制遵循單獨的磁碟區限制邊界,即簡單名稱、主機路徑、相對路徑、變數和 Windows 磁碟機的分類不同。將此磁碟區持久性邊界視為排除項。喜歡準確的服務量和命名宣告,而不是對來源分類和路徑的猜測。
重點:知道您擁有這三本書中的哪一本 - 並轉換器會列出卷列表,以便您可以檢查每一本
重點:知道您擁有這三本書中的哪一本,轉換器會列出卷列表,以便您可以檢查每一本。審核卷持久性作為來源選項、模型欄位、服務卷以及命名宣告行和警告。在檢查來源分類和路徑之前刪除機密。
最後,磁碟區外送來源確認一個單獨的磁碟區決策邊界是命名來源在頂層磁碟區中獲得空宣告。嚴格關閉磁碟區持久性:服務磁碟區和命名宣告是候選者;不保證來源分類和路徑以及 shell 等效性。