Docker प्रॉक्सी क्रेडेन्शियल्स: URL एन्कोडिंग आणि systemd टक्के एस्केप
प्रॉक्सी क्रेडेन्शियल्सचे घटक टक्केवारीने एन्कोड करा, नंतर ते टक्के चिन्ह systemd Environment असाइनमेंटमधून टिकवून ठेवा.
डोमेन-शैलीतील प्रॉक्सी वापरकर्तानावात बॅकस्लॅश असू शकतो, आणि पासवर्डमध्ये URI वाक्यरचनेने राखीव ठेवलेली अक्षरे असू शकतात. प्रॉक्सी URL तयार करताना ते क्रेडेन्शियल घटक एन्कोड करा: उदाहरणार्थ बॅकस्लॅश %5C होतो.
systemd सेवेतील Environment असाइनमेंट आणखी एक पार्सर जोडते. युनिट कॉन्फिगरेशनमधील शब्दशः टक्के चिन्हे दुप्पट करावी लागतात:
[Service]
Environment="HTTPS_PROXY=http://DOMAIN%%5Cproxy-user:example%%[email protected]:8080"
उदाहरणातील मूल्ये डोमेन वापरकर्तानाव आणि # असलेला पासवर्ड दर्शवतात. systemd %% चे % करते, त्यामुळे एन्कोड केलेला URL डेमॉनसाठी राहतो. त्या गंतव्य स्कीमलाही हा मार्ग हवा असेल तर संबंधित HTTP_PROXY असाइनमेंट जोडा.
दुहेरी टक्के ही systemd वाक्यरचना आहे. उलट, Docker च्या daemon.json प्रॉक्सी मूल्यात %5C आणि %23 सारखे सामान्य URI एस्केप असतात. युनिट फाइलचे स्पेलिंग जसे आहे तसे JSON किंवा क्लायंटच्या प्रॉक्सी URL फील्डमध्ये कॉपी करू नका.
कॉन्फिगर केलेला स्रोतही लक्षात ठेवा. Docker नोंदवते की डेमॉन प्रॉक्सी कॉन्फिगरेशनला प्रॉक्सी पर्यावरण चलांवर प्राधान्य आहे; त्यामुळे जुने JSON मूल्य दुरुस्त केलेले सेवा पर्यावरण लपवू शकते.