ଏକ ବିଲ୍ଡ ଟୁଲ୍ ନିଜର ନିର୍ଭରତାଗୁଡ଼ିକୁ ସଫଳତାର ସହିତ ସମାଧାନ କରିପାରେ, କିନ୍ତୁ 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 ଡିମନ ପ୍ରଥମେ ଆବଶ୍ୟକ ବିଲ୍ଡର ଏବଂ ରନ୍ ଇମେଜ୍ ନେବା ଆବଶ୍ୟକ। ସେହି ପୂର୍ବ ପର୍ଯ୍ୟାୟରେ ରେଜିଷ୍ଟ୍ରି ବିଫଳତା ପାଇଁ ଡିମନର ମାର୍ଗ ଏବଂ ରେଜିଷ୍ଟ୍ରି କନଫିଗରେସନ ଆବଶ୍ୟକ, ଏପର୍ଯ୍ୟନ୍ତ ଆରମ୍ଭ ହୋଇନଥିବା ବିଲ୍ଡପ୍ୟାକକୁ ଦିଆଯାଇଥିବା ଭେରିଏବଲ୍ ନୁହେଁ।

ବିଲ୍ଡର କଣ୍ଟେନରରୁ ପହଞ୍ଚିପାରିବା ଭଳି ଏକ ପ୍ରକ୍ସି ଏଣ୍ଡପଏଣ୍ଟ ବ୍ୟବହାର କରନ୍ତୁ। ଏହାର ଲୁପବ୍ୟାକ୍ ଠିକଣା ସେହି କଣ୍ଟେନରକୁ ଚିହ୍ନଟ କରେ, ଜରୁରୀ ନୁହେଁ ଡେଭଲପରର ୱାର୍କଷ୍ଟେସନ।

ଚୂଡ଼ାନ୍ତ ଆପ୍ଲିକେସନର ରନଟାଇମ୍ ପରିବେଶକୁ ମଧ୍ୟ ସଚେତନ ଭାବେ ରଖନ୍ତୁ। ବିଲ୍ଡ ସମୟର ପ୍ରବେଶ ଏବଂ ଆପ୍ଲିକେସନ ପରେ ଚାଲିବା ସମୟରେ ବ୍ୟବହୃତ ମାର୍ଗ ଦୁଇଟି ଅଲଗା କନଫିଗରେସନ ନିଷ୍ପତ୍ତି।

ସମ୍ପର୍କିତ ପ୍ରବନ୍ଧ