daemon.json файлында DNS, сақтау немесе журнал параметрлері бұрыннан болуы мүмкін. Проксиді өзгерткенде бұл кілттер сақталуы керек.

Mike Farah-тың yq v4 көмегімен әр өрісті жеке меншіктеп, бөлек кандидат жазыңыз:

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 прокси тізімі екі HTTP URL мәні үшін кандидаттар ұсынады, егер қоғамдық registry трафигі қоғамдық делдалдарды қолдануы мүмкін болса; ішкі айналып өтулерді сақтаңыз. strenv әр мәнді жол ретінде оқиды. env болса YAML мәндерін талдайды, бұл осы URL және айналып өту өрістері үшін қажет емес. strenv ішіндегі орта айнымалысының атында доллар префиксі жоқ.

Үш өрісті меншіктеу proxies-тің басқа мүшелерін, сондай-ақ байланысы жоқ жоғарғы деңгей параметрлерін сақтайды. -o=json опциясы шығысты Docker күтетін форматта ұстайды. yq деп аталатын басқа бағдарламаның өрнек тілі басқа болуы мүмкін.

Белсенді файлды машинаның әдеттегі конфигурациялау процесі арқылы ауыстырмас бұрын кандидатты қарап шығыңыз. Shell қайта бағыттауымен кіріске тікелей қайта жазу оны yq оқығанға дейін қысқартуы мүмкін.

Бұл дефис арқылы жазылған өріс атаулары Docker Engine daemon-ын конфигурациялайды. Docker Desktop өзінің прокси параметрлерін пайдаланады, ал CLI-дің контейнер ортасының прокси нысанында басқа схема бар.

Қатысты мақалалар