Ei daemon.json-fil kan alt innehalde DNS-, lagrings- eller logginnstillingar. Når proxyen blir endra, bør desse nøklane haldast.

Med yq v4 frå Mike Farah tildeler du dei enkelte felta og skriv ein separat kandidat:

http_proxy='http://proxy.example:8080' \
https_proxy='http://proxy.example:8080' \
no_proxy='localhost,127.0.0.1,.internal.example' \
yq -o=json '
  .proxies."http-proxy" = strenv(http_proxy) |
  .proxies."https-proxy" = strenv(https_proxy) |
  .proxies."no-proxy" = strenv(no_proxy)
' /etc/docker/daemon.json > daemon.proxy-candidate.json

HTTP-proxylista tilbyr kandidatar for dei to HTTP-URL-verdiane når offentleg registry-trafikk kan gå gjennom offentlege mellomledd; hald på dei interne unntaka. strenv les kvar verdi som ein streng. env tolkar derimot YAML-verdiar, noko som er unødvendig for desse URL- og unntaksfelta. Namnet på miljøvariabelen inne i strenv har ikkje dollarteikn-prefiks.

Tildeling av tre felt tek vare på andre medlemmer av proxies og òg urelaterte innstillingar på øvste nivå. Alternativet -o=json held utdata i formatet Docker ventar. Eit anna program kalla yq kan ha eit anna uttrykksspråk.

Gå gjennom kandidaten før du byter ut den aktive fila via den vanlege konfigurasjonsprosessen på maskinen. Skriv du direkte tilbake til inndata med shell-omdirigering, kan ho bli avkorta før yq les ho.

Desse feltnamna med bindestrek konfigurerer daemonen til Docker Engine. Docker Desktop brukar eigne proxyinnstillingar, og proxyobjektet for container-miljøet i CLI har eit anna skjema.

Relaterte artiklar