Un nom d'utilisateur de proxy de style domaine peut contenir une barre oblique inverse, et un mot de passe peut contenir des caractères réservés par la syntaxe URI. Lorsque vous construisez l'URL du proxy, encodez ces composants d'identifiants : une barre oblique inverse devient par exemple %5C.

Une affectation Environment dans un service systemd ajoute un analyseur supplémentaire. Les signes de pourcentage littéraux de la configuration de l'unité doivent être doublés :

[Service]
Environment="HTTPS_PROXY=http://DOMAIN%%5Cproxy-user:example%%[email protected]:8080"

Les valeurs illustratives représentent un nom d'utilisateur de domaine et un mot de passe contenant #. systemd transforme %% en %, ce qui laisse l'URL encodée au démon. Ajoutez l'affectation HTTP_PROXY correspondante si ce schéma de destination a aussi besoin de la route.

Le double pourcentage est de la syntaxe systemd. La valeur de proxy de daemon.json de Docker contient en revanche les échappements URI ordinaires, comme %5C et %23. Ne recopiez pas l'orthographe du fichier d'unité telle quelle dans du JSON ni dans le champ d'URL de proxy d'un client.

Gardez aussi la source configurée à l'esprit. Docker documente que la configuration de proxy du démon prime sur les variables d'environnement de proxy ; une valeur JSON plus ancienne peut donc masquer un environnement de service corrigé.

Articles similaires