Alat bina boleh menyelesaikan kebergantungannya dengan jayanya, manakala buildpack Paketo tidak dapat memuat turun runtime. Buildpack berjalan di dalam kontena pembina dan memerlukan input proksinya sendiri.

Tugas bootBuildImage Gradle

Dalam build.gradle Groovy dengan tugas bootBuildImage Spring Boot yang sedia ada:

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

Pemalam Maven menggunakan image.env

Untuk spring-boot:build-image, letakkan nilai-nilai ini di bawah image.env dalam konfigurasi pemalam Spring Boot Maven yang sedia ada:

<configuration>
  <image>
    <env>
      <HTTP_PROXY>http://proxy.example:8080</HTTP_PROXY>
      <HTTPS_PROXY>http://proxy.example:8080</HTTPS_PROXY>
    </env>
  </image>
</configuration>

Persekitaran tugas Gradle dan image.env Maven kedua-duanya memberikan nilai kepada pembina. Kedua-dua nama boleh menandakan perantara HTTP biasa yang sama, termasuk untuk URL artifak HTTPS. Untuk muat turun artifak awam yang dibenarkan melalui proksi awam, senarai proksi HTTP menyediakan calon untuk nilai pembina ini.

Tetapan ini bebas daripada sifat systemProp.http.proxyHost Gradle. Sifat itu milik JVM dan tidak mengkonfigurasi proses lain di dalam pembina secara automatik.

Daemon Docker mesti terlebih dahulu mendapatkan imej pembina dan larian yang diperlukan. Kegagalan pendaftaran pada peringkat yang lebih awal itu memerlukan laluan dan konfigurasi pendaftaran daemon, bukan pemboleh ubah yang diberikan kepada buildpack yang belum bermula.

Gunakan titik akhir proksi yang boleh dicapai dari kontena pembina. Alamat loopbacknya mengenal pasti kontena itu, bukan semestinya stesen kerja pembangun.

Kekalkan persekitaran larian aplikasi akhir secara sengaja juga. Akses semasa bina dan laluan yang digunakan apabila aplikasi berjalan kemudian ialah dua keputusan konfigurasi yang berasingan.

Artikel berkaitan