Downloads am Terminal funktionéieren, awer VS Code-Erweiderungen schécken um VPN
curl funktionéiert am Container an d'Erweiderung installéiert sech trotzdem net. Vergläicht den lokalen Editor an d'Remote-Ëmwelt, ier Dir Proxy-Astellungen kopéiert.
Downloads, déi am Terminal vum Container geléngen, sinn e richtegen Beweis iwwer d'Ëmwelt vun deem Terminal. Si soen näischt iwwer den Editorprozess, den Erweiderungsinstallateur oder d'Binärdatei, déi eng Erweiderung duerno sicht. Proxy-Variabelen tëscht dësen dräi kopéieren verwandelt eng feelgeschloe Ufro an e ganzen Nomëtteg vun onsënnlechen Ännerungen.
Zwee Ëmwelte ënnerscheeden sech meeschtens an genau engem Punkt. Dee Punkt ze fannen ass méi séier wéi d'Proxy-Dokumentatioun zweemol ze liesen.
Wee Prozess huet déi feelgeschloe Ufro gemaach
Wärend enger eenzeger Installatioun kënnen dräi Ufroe feelgoen, an all huet seng eegen Netzwierkidentitéit. Den Editor freet de Marketplace no Metadaten an enger Paket-URL a luet dann de Paket erof. Eréischt duerno féiert den Erweiderungshost Code aus, dee eventuell e Sproochserver oder eng eegen Binärdatei sicht. Wéi eng Etapp gebrach ass, entscheet wéi ee Prozess e Proxy brauch, an d'Feierfläch nennt d'Etapp selen.
En funktionéierenden Terminal beweist, datt de Container den Internet erreeche kann, net datt den Editor et kann. Liest d'Erweiderungslog fir déi lescht URL, déi se probéiert huet. Den Host, deen do genannt gëtt, identifizéiert de Prozess an d'Politik, déi dofir gëllt.
Lokalen Editor a Remote-Container sinn zwou Ëmwelten
An engem Remote-Arbechtsberäich leeft eng Erweiderung op der Säit, déi hiren Typ deklaréiert. Interface-Erweiderunge bleiwen beim lokalen Editor, an Arbeitsberäichs-Erweiderunge lafen am Container. E Proxy, deen an der enger gesat ass, ass fir déi aner onsiichtbar, an e Rebuild schaaft d'Container-Ëmwelt aus hirer Konfiguratiounsdatei an net aus deem, wat Dir an enger Shell exportéiert hutt. Dee Splitt erkläert firwat déiselwecht Erweiderung op engem Laptop installéiert a am selwechte Projet iwwer SSH feelgeet.
Liest den Installatiounsort, ier Dir eppes ännert. Wann d'Log vun enger Remote-Installatioun mellt, ass d'Container-Ëmwelt déi entscheedend.
Setzt de Proxy do, wou d'Ufro ufänkt
Fir en Dev Container, dee wierklech en HTTP-Proxy brauch, gehéiert d'Variabel an d'Container-Konfiguratioun, sou datt e Rebuild se reproduzéiert. Den Auszuch hei drënner setzt se fir déi Ëmwelt. D'Platzhalteradress steet fir Ären eegene Gateway, an d'Ausschlëss sinn net fakultativ Opfëllung.
"containerEnv": {
"HTTP_PROXY": "http://proxy.corp.example:8080",
"HTTPS_PROXY": "http://proxy.corp.example:8080",
"NO_PROXY": "localhost,127.0.0.1,.internal.example"
}
Den Numm vun der Variabel beschreift de Destinatiounsprotokoll, dofir däerf en HTTPS_PROXY-Wäert légitim mat http ufänken. Wennt d'Ännerung iwwer de unterstëtzte Rebuild-Wee un, a behält d'Ausschlëss, well e Proxy, deen intern Hosten ofkënnt, Servicer briecht, déi de Container brauch.
Trennt Vertrauensfeeler vun der Erreechbarkeet
E Proxy, deen sech verbënnt an dann e Zertifikatsprüfungsfeeler zréckgëtt, huet eng méi spéit Etapp erreecht wéi een, deen d'Verbindung refuséiert. Beim éischte Feeler geet et ëm dat vun der Organisatioun guttgeheescht Vertrauensmaterial, dat an der Ëmwelt installéiert ass, déi d'Ufro mécht. Beim zweete geet et ëm eng erreechbar Adress a Port. Béid als eent Problem ze behandelen ergëtt eng Léisung, déi fir keen vun deenen zwee funktionéiert.
D'Verifikatioun auszeschalten oder den Editor mat erhöhte Rechter ze lafen ass keng Reparatur fir en feelenden Proxy oder eng feelend Vertrauenschäin. Béid tauschen e sichtbare Feeler géint en stille. Probéiert duerno déiselwecht Erweiderung nach eemol a notéiert déi nächst URL, déi feelgeet.
env | grep -iE '^(http|https|no)_proxy='
code --install-extension ms-python.python --force
Notéiert, wéi eng Säit vum Arbeitsberäich déi URL hierbruecht huet. Eng kuerz Notiz mat der Etapp, dem Host an der Säit ass méi wäert wéi eng Lëscht vun Astellungen, déi een geännert huet, well just déi Notiz kann déi nächst Persoun reproduzéieren.