Spring Boot ഇമേജ് ബിൽഡുകൾ: Paketo ബിൽഡറുടെ പ്രോക്സി കോൺഫിഗർ ചെയ്യുക
Gradle bootBuildImage അല്ലെങ്കിൽ Maven image.env വഴി Paketo ബിൽഡറിലേക്ക് പ്രോക്സി വേരിയബിളുകൾ നൽകുക, ബിൽഡ് ടൂളിൽ നിന്നും Docker ഡീമണിൽ നിന്നും വേർതിരിച്ച്.
ഒരു ബിൽഡ് ടൂളിന് അതിന്റെ ആശ്രിതത്വങ്ങൾ വിജയകരമായി പരിഹരിക്കാനാകും, പക്ഷേ Paketo ബിൽഡ്പാക്കിന് റൺടൈം ഡൗൺലോഡ് ചെയ്യാനാവില്ല. ബിൽഡ്പാക്ക് ബിൽഡർ കണ്ടെയ്നറിനുള്ളിൽ പ്രവർത്തിക്കുന്നു, അതിന് സ്വന്തം പ്രോക്സി ഇൻപുട്ട് ആവശ്യമാണ്.
Gradle-ന്റെ bootBuildImage ടാസ്ക്
Spring Boot-ന്റെ നിലവിലുള്ള bootBuildImage ടാസ്ക് ഉപയോഗിക്കുന്ന Groovy build.gradle-ൽ:
tasks.named("bootBuildImage") {
environment["HTTP_PROXY"] = "http://proxy.example:8080"
environment["HTTPS_PROXY"] = "http://proxy.example:8080"
}
Maven പ്ലഗിൻ image.env ഉപയോഗിക്കുന്നു
spring-boot:build-image-നായി, ഈ മൂല്യങ്ങൾ നിലവിലുള്ള Spring Boot Maven പ്ലഗിൻ കോൺഫിഗറേഷനിലെ image.env-ന് കീഴിൽ വയ്ക്കുക:
<configuration>
<image>
<env>
<HTTP_PROXY>http://proxy.example:8080</HTTP_PROXY>
<HTTPS_PROXY>http://proxy.example:8080</HTTPS_PROXY>
</env>
</image>
</configuration>
Gradle-ന്റെ ടാസ്ക് എൻവയോൺമെന്റും Maven-ന്റെ image.env-ഉം രണ്ടും ബിൽഡറിന് മൂല്യങ്ങൾ നൽകുന്നു. രണ്ട് പേരുകളും ഒരേ സാധാരണ HTTP ഇടനിലക്കാരനെ സൂചിപ്പിക്കാം, HTTPS ആർട്ടിഫാക്ട് URL-കൾക്കും. പൊതു പ്രോക്സികൾ വഴി അനുവദിക്കുന്ന പൊതു ആർട്ടിഫാക്ട് ഡൗൺലോഡുകൾക്ക് HTTP പ്രോക്സി പട്ടിക ഈ ബിൽഡർ മൂല്യങ്ങൾക്ക് സ്ഥാനാർഥികൾ നൽകുന്നു.
ഈ ക്രമീകരണം Gradle-ന്റെ systemProp.http.proxyHost പ്രോപ്പർട്ടികളിൽ നിന്ന് സ്വതന്ത്രമാണ്. അവ JVM-ന്റേതാണ്, ബിൽഡറിലെ മറ്റൊരു പ്രോസസിനെ സ്വയമേവ കോൺഫിഗർ ചെയ്യുന്നില്ല.
Docker ഡീമൺ ആദ്യം ആവശ്യമായ ബിൽഡർ, റൺ ഇമേജുകൾ നേടണം. ആ നേരത്തെയുള്ള ഘട്ടത്തിലെ രജിസ്ട്രി പരാജയത്തിന് ഡീമണിന്റെ റൂട്ടും രജിസ്ട്രി കോൺഫിഗറേഷനും വേണം, ഇതുവരെ തുടങ്ങാത്ത ബിൽഡ്പാക്കിന് നൽകുന്ന വേരിയബിളല്ല.
ബിൽഡർ കണ്ടെയ്നറിൽ നിന്ന് എത്തിച്ചേരാവുന്ന പ്രോക്സി എൻഡ്പോയിന്റ് ഉപയോഗിക്കുക. അതിന്റെ ലൂപ്പ്ബാക്ക് വിലാസം ആ കണ്ടെയ്നറിനെ തിരിച്ചറിയിക്കുന്നു, ഡെവലപ്പറുടെ വർക്ക്സ്റ്റേഷൻ ആയിരിക്കണമെന്നില്ല.
അന്തിമ ആപ്ലിക്കേഷന്റെ റൺടൈം എൻവയോൺമെന്റും ബോധപൂർവം നിലനിർത്തുക. ബിൽഡ് സമയത്തെ ആക്സസും ആപ്ലിക്കേഷൻ പിന്നീട് പ്രവർത്തിക്കുമ്പോൾ ഉപയോഗിക്കുന്ന റൂട്ടും രണ്ട് വ്യത്യസ്ത കോൺഫിഗറേഷൻ തീരുമാനങ്ങളാണ്.