Using http proxies in openshift java projects
To use http proxies with java in openshift you should know:
– that tools like maven don’t honor http_proxy & co environment variables
– that each container image has its own build script (assemble) that does or does NOT take http_proxy into account.
Always check the image documentation if you need proxies:
– https://docs.openshift.com/online/using_images/s2i_images/java.html
– https://access.redhat.com/solutions/1758313
– https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.0/html/red_hat_jboss_enterprise_application_platform_for_openshift/configuring_eap_openshift_image#configuring_eap_env_vars
A general and flexible solution is:
– to provide a configuration/settings.xml in your project, eg.
github.com/ioggstream/java-project.git
– pom.xml
– src/
– configuration/settings.xml
– add in settings.xml
openshift interpolates every *PROXY* environment variable stripping stuff, so you may not always be able to do
…
JBoss images support the following variables via the `assemble` script:
– HTTP*_PROXY_HOST
– HTTP*_PROXY_PORT
Another solution is to:
– get the assemble from the given image you’re using (different images, different assemble)
– customize it so that it uses environment variables to build a custom settings.xml to be used within the build
– add it to .s2i/bin/assemble
Here’s an example assemble supporting proxies https://github.com/ivanthelad/openshift-jee-sample/blob/jws/.sti/bin/assemble
February 25 2018 09:48 am | Politica| 1,616 views