在VsCode中遠端連線伺服器中的Docker容器記錄
0、背景
在我試圖使用Vscode新配件Remote連線我的阿里雲伺服器實現雲開發時,出現了一系列的問題。
在這裡記錄一下我的成功連線我
Centos7伺服器
中的Docker容器的過程,方便下次安裝。
正確開啟方式:
在
遠端伺服器Docke
r中拉取相應語言的開發環境(GCC、PYTHON、JAVA甚至Flask、Django專案)並
docker run
啟動後臺執行掛起;
然後在win10 Vscode中連線相應的容器即可實現雲開發。
1、在Docker中開啟遠端訪問
修改遠端伺服器中Docker的配置檔案
$ vi /lib/systemd/system/docker。service
修改以ExecStart開頭的行:(僅針對Centos7)
ExecStart=/user/bin/docker -H tcp://0。0。0。0:2376 -H unix://var/run/docker。sock
這裡一定要記住這個2376埠(可以設定成任意你想的)
PS:如果是Centos7以下,就修改成這樣:
ExecStart=/user/bin/docker -H fd:// -H tcp://0。0。0。0:2376
修改後儲存檔案,然後通知Docker服務作出的修改
$ systemctl daemon-reload
重啟Docker服務
$ service docker restart
2.在遠端伺服器的本地上測試Docker Api,也就是2376埠
$ curl http://localhost:2376/version
如果有資料返回,就說明成功。
但是這裡我們發現用外網連不上Docker(這也是為折騰了好幾天的原因)。
這是因為需要在雲伺服器的控制檯上開啟
2376
埠號,即設定入方向的2376埠的安全組。
然後在我的本地(win10)上開啟
cmd
$ curl http://xxx。xxx。xxx。xxx:2376/version
如果設定成功,此處返回與上面同樣的資料。
到這裡,伺服器上的配置已經成功了。
3.VsCode配置
下載Docker與Remote-Container外掛
在設定(檔案——首選項——設定)中搜索
docker:host
,輸入
tcp://xxx。xxx。xxx。xxx:2376
,xxx代表你的雲伺服器ip地址。
重啟VSCode,點選左下角尖括號選擇,
Remote-Containers
,看到你的伺服器即連線成功。
現在就可以實現本地編輯,遠端編譯的操作了。