Docker daemon.json прокси талааларын yq v4 менен түзөтүү
Учурдагы daemon жөндөөлөрүн сактоо, прокси саптарын кошуу жана текшерүүгө боло турган JSON талапкерди түзүү үчүн Mike Farah'дын yq v4 колдонуңуз.
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.jsonHTTP прокси тизмеси эки HTTP URL мааниси үчүн талапкерлерди сунуштайт, эгер коомдук registry трафиги коомдук ортомчуларды колдонушу мүмкүн болсо; ички айланып өтүүлөрдү сактаңыз. strenv ар бир маанини сап катары окуйт. env болсо YAML маанилерин талдайт, бул URL жана айланып өтүү талаалары үчүн керек эмес. strenv ичиндеги чөйрө өзгөрмөсүнүн атында доллар префикси жок.
Үч талааны дайындоо proxies'тин башка мүчөлөрүн, ошондой эле байланышы жок жогорку деңгээлдеги жөндөөлөрдү сактайт. -o=json параметри чыгышты Docker күткөн форматта кармайт. yq деп аталган башка программанын туюнтма тили башка болушу мүмкүн.
Машинанын кадимки конфигурациялоо процесси аркылуу активдүү файлды алмаштыруудан мурун талапкерди карап чыгыңыз. Shell багыттоосу менен кирүүгө түз кайра жазуу аны yq окуганга чейин кыскартышы мүмкүн.
Бул дефис аркылуу жазылган талаа аттары Docker Engine daemon'ун конфигурациялайт. Docker Desktop өзүнүн прокси жөндөөлөрүн колдонот, ал эми CLI'дин контейнер чөйрөсүнүн прокси объектисинде башка схема бар.