要在 WSL 中完全使用 Docker 項目,必須安裝 WSL 2。在撰寫本文時,它的使用只能作為參與 Windows Insider 計劃的一部分(WSL 2 在版本 18932 及更高版本中可用)。 另外值得一提的是,安裝和設定 Docker Desktop 需要 Windows 10 Pro 版本。
第一步驟
加入 Insider 計畫並安裝更新後,您需要安裝 Linux 發行版(本例為 Ubuntu 18.04)和具有 WSL 2 技術預覽版的 Docker Desktop:
在這兩點上,我們都遵循所有安裝和設定說明。
安裝 Ubuntu 18.04 發行版
在執行 Ubuntu 18.04 之前,您需要透過在 PowerShell 中執行兩個命令來啟用 Windows WSL 和 Windows 虛擬機器平台:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
(需要重新啟動電腦)Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
之後我們需要確保我們將使用 WSL v2。 為此,請在 WSL 或 PowerShell 終端機中執行以下命令:
wsl -l -v
— 查看目前安裝的版本。 如果 1,那麼我們在列表中進一步向下移動wsl --set-version ubuntu 18.04 2
- 更新到版本2wsl -s ubuntu 18.04
— 安裝 Ubuntu 18.04 作為預設發行版
現在您可以啟動 Ubuntu 18.04 並對其進行配置(指定您的使用者名稱和密碼)。
安裝 Docker 桌面
在安裝過程中請按照說明進行操作。 安裝後和首次啟動時,電腦需要重新啟動才能啟用 Hyper-V(需要 Windows 10 Pro 支援)。
重要的信息! 如果 Docker Desktop 報告被防火牆阻止,請前往防毒設定並對防火牆規則進行以下變更(在本範例中,使用卡巴斯基全方位安全軟體作為防毒軟體):
- 前往設定 -> 安全性 -> 防火牆 -> 設定封包規則 -> 本機服務 (TCP) -> 編輯
- 從本機連接埠清單中刪除連接埠 445
- 保存
啟動 Docker Desktop 後,從其上下文選單中選擇 WSL 2 Tech Preview。
在開啟的視窗中,按一下「開始」按鈕。
Docker 和 docker-compose 現在可以在 WSL 發行版中使用。
重要的信息! 更新後的 Docker Desktop 現在在設定視窗中有一個帶有 WSL 的選項卡。 那裡啟用了 WSL 支援。
重要的信息! 除了 WSL 啟動複選框之外,您還需要在「來源」->「WSL 整合」標籤中啟動 WSL 發行版。
Запуск
出乎意料的是,在嘗試提升位於 Windows 使用者目錄中的項目容器時出現了許多問題。
與 bash 腳本啟動相關的各種錯誤(通常在建置用於安裝必要的程式庫和發行版的容器時啟動)以及 Linux 上開發的其他常見問題使我們考慮將專案直接放置在 Ubuntu 18.04 的使用者目錄中。
.
根據上一個問題的解決方案,以下是:如何透過 Windows 上安裝的 IDE 來處理專案檔。 作為“最佳實踐”,我發現自己只有一個選擇 - 透過 VSCode 工作(儘管我是 PhpStorm 的粉絲)。
下載並安裝VSCode後,請務必安裝在擴充功能中
安裝上述擴充功能後,只需執行命令 code .
VSCode 運行時的專案目錄中。
本例中需要nginx透過瀏覽器存取容器。 透過安裝它 sudo apt-get install nginx
事實證明並沒有那麼簡單。 首先,我們需要透過運行來更新 WSL 發行版 sudo apt update && sudo apt dist-upgrade
,然後才開始 nginx 安裝。
重要的信息! 所有本機網域都不在 Linux 發行版的 /etc/hosts 檔案中註冊(甚至不存在),而是在 Windows 32 的主機檔案(通常位於 C:WindowsSystem10driversethosts)中註冊。
來源
每個步驟的更詳細描述可以在這裡找到:
https://code.visualstudio.com/docs/remote/wsl https://docs.docker.com/docker-for-windows/wsl-tech-preview/ https://docs.docker.com/docker-for-windows/ https://docs.microsoft.com/ru-ru/windows/wsl/wsl2-install
來源: www.habr.com