Type de problème : bogue
J'ai des contextes qui fonctionnent bien à partir de la ligne de commande avec l'utilisation du contexte docker mais je ne peux charger aucune information dans l'extension docker avec une connexion ssh ou tcp (les deux fonctionnent bien à partir de la ligne de commande). TCP J'obtiens EPROTO SSLV3_ALERT_BAD_CERTIFICATE. Cela n'a aucun sens car cela fonctionne bien sur la ligne de commande.
Version d'extension : 1.3.1
Version du code VS : Code 1.46.1 (cd9ea6488829f560dc949a8b2fb789f3cdc05f5d, 2020-06-17T21:17:14.222Z)
Version du système d'exploitation : Darwin x64 19.5.0
Information système
|Article|Valeur|
|---|---|
|Processeurs|Processeur Intel(R) Core(TM) i9-9980HK à 2,40 GHz (16 x 2400)|
|État du GPU|2d_canvas : activé
flash_3d : activé
flash_stage3d : activé
flash_stage3d_baseline : activé
gpu_compositing : activé
métal : désactivé_off
threads_raster_multiples : activé_on
oop_rasterization : disabled_off
protected_video_decode : non disponible_off
pixellisation : activée
skia_renderer : disabled_off_ok
video_decode : activé
viz_display_compositor : enabled_on
viz_hit_test_surface_layer : disabled_off_ok
Webgl : activé
webgl2 : activé |
|Charge (moyenne)|3, 3, 3|
|Mémoire (Système)|32,00 Go (1,07 Go libre)|
|Traiter Argv||
|Lecteur d'écran|non|
|VM|0%|
La seule façon de me connecter à mon environnement docker distant avec vscode est d'utiliser eval $(docker-machine env envname) puis de lancer vscode à partir de la ligne de commande avec le code -n. Donc, en gros, il utilise simplement la configuration DOCKER_HOST. J'ai configuré le contexte avec le même ca,key,cert à partir des variables d'environnement docker-machine.
L'extension n'utilise pas la CLI pour quoi que ce soit dans l'arborescence, pour des raisons de performances. Pour les connexions TCP, vous devrez utiliser les paramètres docker.host
/ DOCKER_HOST
+ docker.certPath
/ DOCKER_CERT_PATH
. Nous n'avons pas implémenté la prise en charge basée sur docker context
pour les connexions TCP + cert car il est extrêmement difficile de mapper les informations de docker context
aux options acceptées par Dockerode.
SSH devrait fonctionner tant que vous avez configuré l'authentification de l'agent, ceci est documenté ici .
Ok, je suis revenu à l'hôte ssh pour créer le contexte docker. Ensuite, après avoir exécuté ssh-add sans aucun paramètre pour utiliser les paramètres de ~/.ssh/id_rsa, cela fonctionne comme prévu. Merci!
Heureux que cela fonctionne avec SSH ! En ce qui concerne le manque de support TCP + Cert avec docker context
, nous l'avons suivi ici : #2058
Je suppose que nous pouvons résoudre celui-ci comme un double de celui-ci.
Heureux que cela fonctionne avec SSH ! En ce qui concerne le manque de support TCP + Cert avec
docker context
, nous l'avons suivi ici : #2058Je suppose que nous pouvons résoudre celui-ci comme un double de celui-ci.
Bon, pour ce que ça vaut...
Si j'exécute eval $(docker-machine env myEnvName) puis lancez vscode avec le code -n pour utiliser les variables d'environnement, il utilise la configuration TCP. Et en prime, il n'apporte aucune modification globale aux paramètres comme semble le faire l'utilisation du contexte docker.
Merci
Oui, je m'y attendais. La façon dont nous appliquons les paramètres est essentiellement la suivante :
docker.dockerodeOptions
, si cela n'existe pas...docker.host
plus les autres paramètres de variable d'environnement, si cela n'existe pas...DOCKER_HOST
plus les autres variables d'environnement, si cela n'existe pas...docker context
(cela _devrait_ toujours fonctionner, mais si ce n'est pas le cas...)