Għodda tal-bini tista' ssolvi d-dipendenzi tagħha b'suċċess, filwaqt li buildpack Paketo ma jistax iniżżel runtime. Il-buildpack jaħdem ġewwa l-kontenitur tal-builder u jeħtieġ id-daħla tal-proxy tiegħu stess.

Il-kompitu bootBuildImage ta' Gradle

F'build.gradle Groovy bil-kompitu bootBuildImage eżistenti ta' Spring Boot:

tasks.named("bootBuildImage") {
    environment["HTTP_PROXY"] = "http://proxy.example:8080"
    environment["HTTPS_PROXY"] = "http://proxy.example:8080"
}

Il-plugin Maven juża image.env

Għal spring-boot:build-image, poġġi dawn il-valuri taħt image.env fil-konfigurazzjoni eżistenti tal-plugin 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>

Kemm l-ambjent tal-kompitu ta' Gradle kif ukoll image.env ta' Maven jagħtu valuri lill-builder. Iż-żewġ ismijiet jistgħu jidentifikaw l-istess intermedjarju HTTP ordinarju, inkluż għal URL tal-artefatti HTTPS. Għal tniżżil pubbliku ta' artefatti permess permezz ta' proxies pubbliċi, il-lista tal-proxy HTTP tipprovdi kandidati għal dawn il-valuri tal-builder.

Dan is-setting huwa indipendenti mill-proprjetajiet systemProp.http.proxyHost ta' Gradle. Dawk jappartjenu lill-JVM u ma jikkonfigurawx awtomatikament proċess ieħor fil-builder.

Id-daemon Docker l-ewwel irid jikseb l-immaġini tal-builder u tal-ħidma meħtieġa. Falliment tar-reġistru f'dak l-istadju preċedenti jeħtieġ ir-rotta u l-konfigurazzjoni tar-reġistru tad-daemon, mhux varjabbli mogħti lil buildpack li għadu ma bedax.

Uża endpoint tal-proxy li jintlaħaq mill-kontenitur tal-builder. L-indirizz loopback tiegħu jidentifika dak il-kontenitur, mhux bilfors l-istazzjon tax-xogħol tal-iżviluppatur.

Żomm l-ambjent tal-ħidma tal-applikazzjoni finali intenzjonat ukoll. L-aċċess waqt il-bini u r-rotta użata meta l-applikazzjoni taħdem aktar tard huma deċiżjonijiet ta' konfigurazzjoni separati.

Artikli relatati