Zana ya kujenga inaweza kutatua vitegemezi vyake kwa mafanikio, lakini buildpack ya Paketo haiwezi kupakua runtime. Buildpack huendeshwa ndani ya kontena la mjenzi na inahitaji pembejeo yake ya proksi.

Kazi ya bootBuildImage ya Gradle

Katika Groovy build.gradle yenye kazi ya bootBuildImage iliyopo ya Spring Boot:

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

Programu-jalizi ya Maven hutumia image.env

Kwa spring-boot:build-image, weka thamani hizi chini ya image.env katika usanidi uliopo wa programu-jalizi ya 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>

Mazingira ya kazi ya Gradle na image.env ya Maven zote humpa mjenzi thamani. Majina yote mawili yanaweza kuashiria mpatanishi yuleyule wa kawaida wa HTTP, ikiwa ni pamoja na URL za artefact za HTTPS. Kwa upakuaji wa umma wa artefact unaoruhusiwa kupitia proksi za umma, orodha ya proksi za HTTP hutoa wagombea kwa thamani hizi za mjenzi.

Mpangilio huu haujitegemea sifa za systemProp.http.proxyHost za Gradle. Zile ni za JVM na hazisanidi mchakato mwingine ndani ya mjenzi kiotomatiki.

Daemon ya Docker lazima kwanza ipate picha za mjenzi na za uendeshaji zinazohitajika. Kushindwa kwa rejista katika hatua hiyo ya awali kunahitaji njia na usanidi wa rejista wa daemon, sio kigeu kinachotolewa kwa buildpack ambayo haijaanza bado.

Tumia kituo cha mwisho cha proksi kinachofikiwa kutoka kontena la mjenzi. Anwani yake ya loopback hutambulisha kontena hilo, sio lazima kituo cha kazi cha msanidi.

Weka pia mazingira ya uendeshaji wa programu ya mwisho kwa makusudi. Ufikiaji wakati wa kujenga na njia inayotumika wakati programu inaendeshwa baadaye ni maamuzi mawili tofauti ya usanidi.

Makala zinazohusiana