VS Code Dev Containers: NODE_EXTRA_CA_CERTS ക്രമീകരിക്കൽ
കണ്ടെയ്നറിനുള്ളിൽ വായിക്കാവുന്ന PEM ഫയൽ ഉപയോഗിച്ച് VS Code-ന്റെ റിമോട്ട് Node പ്രോസസിന്റെ എൻവയോൺമെന്റിൽ NODE_EXTRA_CA_CERTS സജ്ജമാക്കുക.
ആദ്യം അംഗീകരിച്ച PEM CA ഫയൽ dev കണ്ടെയ്നറിനുള്ളിൽ സ്ഥാപിക്കുകയോ മൗണ്ട് ചെയ്യുകയോ ചെയ്യുക. ഹോസ്റ്റ് ബ്രൗസറിന്റെ ട്രസ്റ്റും ഹോസ്റ്റിൽ മാത്രമുള്ള പാതയും അതിന്റെ Node പ്രോസസിന് സർട്ടിഫിക്കറ്റ് ബൈറ്റുകൾ നൽകുന്നില്ല.
തുടർന്ന് ഇത് VS Code-നും ബന്ധപ്പെട്ട സബ്പ്രോസസുകൾക്കുമുള്ള നിലവിലുള്ള .devcontainer/devcontainer.json-ൽ ചേർക്കുക:
"remoteEnv": {
"NODE_EXTRA_CA_CERTS": "/usr/local/share/certs/corporate-ca.pem"
}പാത കണ്ടെയ്നറിനുള്ളിലാണ്. അതുമായി ബന്ധപ്പെട്ട Node പ്രോസസ് ആരംഭിക്കാൻ Dev Containers ലൈഫ്സൈക്കിളിലൂടെ വീണ്ടും ബിൽഡ് ചെയ്യുകയോ വീണ്ടും തുറക്കുകയോ ചെയ്യുക.
NODE_EXTRA_CA_CERTS ലോഞ്ച് സമയത്ത് Node-ന്റെ CA സെറ്റ് വികസിപ്പിക്കുന്നു. പിന്നീട് process.env മാറ്റുന്നത് ആ സെറ്റ് വീണ്ടും ലോഡ് ചെയ്യുന്നില്ല, കൂടാതെ വ്യക്തമായ ca ഓപ്ഷനുള്ള ക്ലയന്റിന് മറ്റൊരു ട്രസ്റ്റ് ഉറവിടം തിരഞ്ഞെടുക്കാം.
കണ്ടെയ്നർ മുഴുവനുമുള്ള എൻവയോൺമെന്റിന്, image/Dockerfile ക്രമീകരണത്തോടെയുള്ള containerEnv അല്ലെങ്കിൽ Compose സേവന എൻവയോൺമെന്റ് ഉപയോഗിക്കുക; ഓരോ പ്രോസസും remoteEnv ഉൾക്കൊള്ളുന്നു എന്ന് അനുമാനിക്കരുത്.
NODE_TLS_REJECT_UNAUTHORIZED=0 ഉപയോഗിക്കാതെ ഇത് ട്രസ്റ്റ് നൽകുന്നു. പ്രോക്സി തിരഞ്ഞെടുക്കൽ വേറിട്ടതാണ്: CA-യ്ക്ക് കണക്ഷൻ ലിസണറിലേക്ക് റൂട്ട് ചെയ്യാനോ എത്താനാകാത്ത എൻഡ്പോയിന്റ് പരിഹരിക്കാനോ കഴിയില്ല.