daemon.json ھۆججىتىدە ئاللىبۇرۇن DNS، ساقلاش ياكى خاتىرىلەش تەڭشەكلىرى بولۇشى مۇمكىن. proxy نى ئۆزگەرتكەندە بۇ ئاچقۇچلار ساقلىنىشى كېرەك.

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 proxy تىزىملىكى ئاممىۋى registry يوللىرى ئاممىۋى ۋاسىتىچىلەرنى ئىشلىتەلەيدىغاندا ئىككى HTTP URL قىممىتى ئۈچۈن نامزاتلارنى تەمىنلەيدۇ؛ ئىچكى ئاتلىتىشلارنى ساقلاڭ. strenv ھەر بىر قىممەتنى تىزىق سۈپىتىدە ئوقۇيدۇ. env بولسا YAML قىممەتلىرىنى تەھلىل قىلىدۇ، بۇ URL ۋە ئاتلىتىش ساھەلىرى ئۈچۈن زۆرۈر ئەمەس. strenv ئىچىدىكى مۇھىت ئۆزگەرتكۈچىنىڭ نامىدا دوللار ئالدى قوشۇمچىسى يوق.

ئۈچ ساھەنى تەيىنلەش proxies نىڭ باشقا ئەزالىرىنى شۇنداقلا مۇناسىۋەتسىز يۇقىرى قاتلام تەڭشەكلىرىنى ساقلايدۇ. -o=json تاللانمىسى چىقىرىشنى Docker كۈتكەن فورماتتا ساقلايدۇ. yq دېگەن باشقا پروگراممىنىڭ ئىپادىلەش تىلى باشقا بولۇشى مۇمكىن.

ماشىنىنىڭ ئادەتتىكى سەپلىمە جەريانى ئارقىلىق ئاكتىپ ھۆججەتنى ئالماشتۇرۇشتىن بۇرۇن نامزاتنى تەكشۈرۈڭ. shell قايتا يۆنىلىشى بىلەن كىرگۈزۈشكە بىۋاسىتە قايتا يېزىش yq ئوقۇشتىن بۇرۇن ئۇنى كېسىپ قويۇشى مۇمكىن.

بۇ سىزىقچە ئىشلىتىلگەن ساھە ناملىرى Docker Engine نىڭ daemon نى سەپلەيدۇ. Docker Desktop ئۆزىنىڭ proxy تەڭشەكلىرىنى ئىشلىتىدۇ، CLI نىڭ كونتېينېر مۇھىت proxy ئوبيېكتىنىڭ باشقا سىخېمىسى بار.

مۇناسىۋەتلىك ماقالىلەر