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 മൂല്യത്തിന് തിരുത്തിയ സേവന പരിസ്ഥിതി മറയ്ക്കാനാകും.