Credenziali proxy Docker: codifica URL ed escape percentuali di systemd
Codifica in percentuale i componenti delle credenziali proxy, poi preserva quei segni di percentuale attraverso un'assegnazione Environment di systemd.
Un nome utente proxy in stile dominio può contenere una barra rovesciata, e una password può contenere caratteri riservati dalla sintassi URI. Quando costruisci l'URL del proxy, codifica quei componenti delle credenziali: una barra rovesciata diventa, per esempio, %5C.
Un'assegnazione Environment in un servizio systemd aggiunge un altro parser. I segni di percentuale letterali nella configurazione dell'unità devono essere raddoppiati:
[Service]
Environment="HTTPS_PROXY=http://DOMAIN%%5Cproxy-user:example%%[email protected]:8080"
I valori illustrativi rappresentano un nome utente di dominio e una password che contiene #. systemd trasforma %% in %, lasciando l'URL codificato al demone. Aggiungi l'assegnazione HTTP_PROXY corrispondente se anche quello schema di destinazione ha bisogno della rotta.
La doppia percentuale è sintassi di systemd. Il valore proxy in daemon.json di Docker contiene invece gli escape URI ordinari, come %5C e %23. Non copiare la grafia del file di unità senza modifiche nel JSON o nel campo URL proxy di un client.
Tieni d'occhio anche l'origine configurata. Docker documenta che la configurazione proxy del demone ha la precedenza sulle variabili d'ambiente proxy; un valore JSON più vecchio può quindi nascondere un ambiente di servizio corretto.