Mga build ng imahe ng Spring Boot: i-configure ang proxy ng Paketo builder
Ipasa ang mga variable ng proxy sa isang Paketo builder sa pamamagitan ng Gradle bootBuildImage o Maven image.env, hiwalay sa build tool at sa Docker daemon.
Ang isang build tool ay maaaring matagumpay na malutas ang mga dependency nito, ngunit ang isang Paketo buildpack ay hindi makapag-download ng runtime. Tumatakbo ang buildpack sa loob ng container ng builder at kailangan nito ang sarili nitong input ng proxy.
Ang bootBuildImage task ng Gradle
Sa isang Groovy build.gradle na gumagamit ng umiiral na bootBuildImage task ng Spring Boot:
tasks.named("bootBuildImage") {
environment["HTTP_PROXY"] = "http://proxy.example:8080"
environment["HTTPS_PROXY"] = "http://proxy.example:8080"
}
Ginagamit ng plugin ng Maven ang image.env
Para sa spring-boot:build-image, ilagay ang mga halagang ito sa ilalim ng image.env sa umiiral na configuration ng plugin ng Spring Boot Maven:
<configuration>
<image>
<env>
<HTTP_PROXY>http://proxy.example:8080</HTTP_PROXY>
<HTTPS_PROXY>http://proxy.example:8080</HTTPS_PROXY>
</env>
</image>
</configuration>
Parehong nagbibigay ng mga halaga sa builder ang environment ng task ng Gradle at ang image.env ng Maven. Maaaring tumukoy ang dalawang pangalan sa parehong ordinaryong tagapamagitan ng HTTP, kabilang ang para sa mga URL ng artefact na HTTPS. Para sa mga pampublikong download ng artefact na pinapayagan sa pamamagitan ng mga pampublikong proxy, nagbibigay ang listahan ng proxy ng HTTP ng mga kandidato para sa mga halagang ito ng builder.
Ang setting na ito ay independiyente sa mga property na systemProp.http.proxyHost ng Gradle. Pag-aari ng JVM ang mga iyon at hindi awtomatikong nagko-configure ng ibang proseso sa loob ng builder.
Kailangan munang makuha ng Docker daemon ang mga kinakailangang imahe ng builder at ng pagtakbo. Ang pagkabigo ng registry sa naunang yugto ay nangangailangan ng ruta at configuration ng registry ng daemon, hindi isang variable na ibinigay sa isang buildpack na hindi pa nagsisimula.
Gumamit ng endpoint ng proxy na maaabot mula sa container ng builder. Tinutukoy ng loopback address nito ang container na iyon, hindi kinakailangan ang workstation ng developer.
Panatilihing sinadya rin ang runtime environment ng huling aplikasyon. Ang pag-access sa oras ng build at ang rutang ginagamit kapag tumatakbo ang aplikasyon mamaya ay magkaibang desisyon sa configuration.