
我正在嘗試設定基於 Visual Studio Code 的開發環境。目標是編寫和調試在遠端 Docker 容器中執行的 Python 程式碼。
這就是我所做的:我安裝了 Visual Studio Code Insiders、Python 擴展和遠端開發擴展(1 個擴展中的 3 個擴展),在遠端電腦(運行 Linux,我是其 sudoer)上設定 SSH我的(運行Windows)。現在我可以透過 SSH 連接到這台遠端電腦並在其上執行 Python 程式碼。這些功能已經令人難以置信,但我還需要更多。
在這台遠端電腦上正在執行一個 Docker 服務,我希望能夠使用某個 Docker 容器內的 Python 解釋器來執行 Python 程式碼,而不是使用遠端電腦的 Python 解釋器。因此,我不是在我的電腦上而是在遠端電腦上下載了 Docker 擴充功能(由 Visual Studio Code 提議),然後將 settings.json 檔案更改為:
{
"remote.extensionKind": {
"peterjausovec.vscode-docker": "workspace"
}
}
根據所述此處,Docker 擴充限制部分。然後,單擊左側的 Docker 按鈕後,我可以看到遠端電腦上運行的所有容器的列表,這真的很棒。
但是,當我嘗試將 Visual Studio Code 附加到這些容器之一時,它無法找到 Docker 守護程式。閱讀完 Docker daemon 的文檔後這裡,我使用選項-H tcp://0.0.0.0:22
或重新啟動了 Docker 守護進程,-H tcp://0.0.0.0:2375
以便守護進程能夠偵聽從我的電腦遠端發出的請求。第一個根本不起作用(守護程式未啟動),第二個起作用(守護程式啟動)。但是,我仍然無法將 Visual Studio Code 附加到我的容器(Visual Studio Code 仍然找不到守護程式)。
任何幫助將不勝感激!
答案1
問題是我有一個舊版本的 Docker,我需要 18.09 版本來啟用與 Docker 守護程式的 SSH 通訊。