Docker-proxy-påloggingsdetaljer: URL-koding og systemd-prosentescape
Prosentkod proxyens påloggingskomponenter, og ta deretter vare på disse prosenttegnene gjennom en systemd Environment-tildeling.
Et proxy-brukernavn i domenestil kan inneholde en omvendt skråstrek, og et passord kan inneholde tegn som URI-syntaksen reserverer. Når du bygger proxy-URL-en, kod disse påloggingskomponentene: en omvendt skråstrek blir for eksempel %5C.
En Environment-tildeling i en systemd-tjeneste legger til nok en parser. Bokstavelige prosenttegn i enhetskonfigurasjonen må dobles:
[Service]
Environment="HTTPS_PROXY=http://DOMAIN%%5Cproxy-user:example%%[email protected]:8080"
De illustrerende verdiene representerer et domenebrukernavn og et passord som inneholder #. systemd gjør %% om til %, slik at den kodede URL-en blir liggende hos daemonen. Legg til den tilsvarende HTTP_PROXY-tildelingen hvis det målet også trenger ruten.
Den doble prosenten er systemd-syntaks. Docker sin daemon.json-proxyverdi inneholder i stedet de vanlige URI-escapene, som %5C og %23. Ikke kopier stavemåten fra enhetsfilen uendret inn i JSON eller i et klients proxy-URL-felt.
Hold også den konfigurerte kilden i syne. Docker dokumenterer at daemon-proxykonfigurasjonen har forrang foran proxy-miljøvariabler; en eldre JSON-verdi kan derfor skjule et rettet tjenestemiljø.