繁體中文

開發者工具 · Docker run 到 Docker compose 轉換器

Compose 中的 Docker 網路:網橋、主機和預設網絡

· 背景

碼頭工人 撰寫 網路

說明 compose 中的 docker 網路的抽象圖:網橋、主機和預設網絡
原始 ToolAcre 向量圖

Docker 的網路模型在早期的 --link 時代和今天的使用者定義網路之間發生了很大變化。這篇文章解釋了模式、Compose 自動建立的內容以及 --network 標誌如何轉換。

Web容器找不到資料庫-舊的docker run使用了--link,新檔案什麼都沒有

Web容器找不到資料庫-舊的docker run使用了--link,新檔案什麼都沒有。證據:--link 被消耗並被警告為遺留,而不是成為 YAML。使用一次性文字再現網路連線。將每個來源事件與 network_mode 網路連結配對;保留 DNS 和拓撲以供目的地審核。

網路事件也揭示了一個單獨的網路事件邊界是主機無橋專用和容器前綴值變為network_mode。證據:host none 橋接器私有且容器前綴值變成 network_mode。此網路連線約束是一個停止點。檢查沒有製造行為的網路模式網路連結,然後記錄 DNS 和拓撲的主機檢查。

轉換器將使用者命名的網路宣告為外部;它不建置多服務預設網絡

預設橋接器和使用者定義橋 - 為什麼服務名稱僅在後者上解析。證據:單服務轉換器無法建立專案 DNS 關係;轉換器將使用者命名的網路宣告為外部;它不建置多服務預設網路。將網路連線令牌追蹤到 network_mode 網路連結中。將有序值與最後值欄位分開; DNS 和拓撲不在收集範圍內。

相關的網路機制邊界是,對於該網路部分,在該候選檔案旁邊保留該網路部分的原始命令和該網路部分的警告。證據:儲存庫沒有提供更廣泛的執行時間或歷史證據。使用此網路連線事實來預測 network_mode 網路連結中的一個成員或標量。在決定有關 DNS 和拓撲的任何事情之前檢查警告。

專案網路 DNS 行為不是由該單一服務轉換器產生或測試的

Compose 為您建立的內容 — 一個專案網絡,其中每個服務都有一個 DNS 名稱。證據:自訂網路變成服務入口加外部宣告;專案網路 DNS 行為不是由該單一服務轉換器產生或測試的。從模型判斷網路附件序列化。在 network_mode 網路連結中引用可以保護類型,但不提供 DNS 和拓撲的操作證明。

第二個網路序列化觀察是為此網路部分保留該網路部分的原始命令,並警告除了該網路部分之外,該網路序列化結果將該網路部分配置表示的候選檔案與該網路部分影像元資料的缺失上下文分開,該檔案位於網路序列化轉換之外。此網路附件輸出將設定與不可用的上下文分開。保持 network_mode 網路連結可審查並獨立檢查 DNS 和拓撲。

--network 主機且無 — network_mode:主機、其以 Linux 為中心的性質以及被忽略的端口

--network 主機和無 — network_mode:主機、其以 Linux 為中心的性質以及被忽略的連接埠。在網路附件異常處停止而不是猜測。任何靠近 network_mode 網路連結的新增都需要與 DNS 和拓撲相關的特定部署的原因。

另一個網路異常約束是單獨的網路異常邊界是覆蓋 macvlan 別名和固定位址需要手動工作。證據:覆蓋 macvlan 別名和固定地址需要手動工作。將原始網路連線指令保留在警告旁邊。此比較顯示了 network_mode 網路連結包含哪些內容以及哪些 DNS 和拓樸決策仍然是手動的。

container:x 保留為 network_mode:container:x,不重寫為 service:x

--network 容器:x — Compose 中的網路模式:service:x 及其在 VPN sidecar 中的用途。證據:container:x 仍然是原義的,並沒有重寫為 service:x; container:x 保留為 network_mode:container:x,而不是重寫為 service:x。從合成名稱建立網路附件範例。讓每個 network_mode 網路連結項目都可追踪,而不會暴露生產 DNS 和拓撲詳細資訊。

相同的網路範例範例示範了對於此網路部分,在此候選檔案旁邊保留此網路部分的原始命令和此網路部分的警告。配對的網路連線事實應該在 network_mode 網路連結中可見。記錄該行並避免有關 DNS 和拓撲的假設。

--link 被警告為遺留並被省略,而不是成為連結鍵

--link — 舊版連結:關鍵、它的作用以及為何服務名稱取代它。證據:沒有產生連結金鑰,並必須手動對對等點建模; --link 被警告為遺留並被省略,而不是成為連結鍵。將網路連線結果轉換為一種可觀察的 network_mode 網路連結差異。 Docker 擁有後來的 DNS 和拓樸裁決。

網路結果實作也顯示,對於該網路部分,保留該網路部分的原始命令和警告,對於該網路部分,該候選檔案網路結果事實定義了瀏覽器為此網路部分貢獻的內容,docker仍然擁有網路結果執行時判決,對於該網路部分,操作員仍然擁有網路結果安全策略,對於該網路部分儲存庫仍然需要刪除網路結果秘密,對於該網路部分,保留這些責任,當對於描述產生的服務的該網路部分時,這些責任是分開的。分割網路附件職責:轉換寫入 network_mode 網路連結,儲存庫刪除機密,操作員驗證 DNS 和拓撲。

這不包括什麼 - 覆蓋網路、macvlan 和 IPv6 配置

這不包括覆蓋網路、macvlan 和 IPv6 配置。將網路連線範圍限制為此處顯示的 network_mode 網路連結分支。相鄰表單和預設值無法回答 DNS 和拓樸問題。

另一個網路範圍限制來自單獨的網路限制邊界,即單一服務轉換器無法建構專案 DNS 關係。證據:單一服務轉換器無法建構專案 DNS 關係。將此網路連線邊界視為排除項。優先選擇準確的網路模式網路連結,而不是對 DNS 和拓撲的猜測。

閱讀網路模式和外部網路宣告旁的警告

重點:Compose 網路是現代的 --link — 並使用 --network 轉換指令顯示了該標誌在服務中的表示方式。證據:主機模式警告已發佈的連接埠沒有執行時間效果;請閱讀 network_mode 和外部網路宣告旁邊的警告。審核網路附件作為來源選項、模型欄位、network_mode 網路連結行和警告。在檢查 DNS 和拓撲之前刪除機密。

最後,網路外送來源確認保留此網路部分的原始命令,並對此網路部分發出警告,該候選檔案表明網路外送結論提高了此網路部分的可審計性,而沒有承諾此網路部分解析的等效 shell 仍然在網路外送保證之外。嚴格關閉網路附件:network_mode 網路連結是候選者;不保證 DNS 和拓撲以及 shell 等效。