WASdev / ci.docker.websphere-traditional

Dockerfiles for WebSphere Application Server traditional
Apache License 2.0
171 stars 192 forks source link

Is there a way specify max heap for wsadmin.sh while .py files are being applied? #221

Open realModusOperandi opened 4 years ago

realModusOperandi commented 4 years ago

I was helping someone to build their app (quite large, 400MB or so) into a tWAS image. We created a Dockerfile to add the app, a wsadmin script to create config, and a wsadmin script to install the app (generated using Transformation Advisor). When we attempted to build the image FROM ibmcom/websphere-traditional:latest-ubi using default settings, app deployment appeared to hang indefinitely (over half an hour before we gave up waiting.)

In the app's original environment, the heap size for wsadmin was increased quite a lot to facilitate deploying the app in question, so we tried manually patching in a version of wsadmin.sh that set the heap size to the same value as used on-prem, and the app deployed in 8 minutes or so.

I'm opening this issue to discuss and possibly propose adding a mechanism to be able to configure some settings for the wsadmin.sh client itself. Perhaps some sort of ARG WSADMINARGS that could be passed from the Dockerfile to the wsadmin.sh command line? Something that would allow for passing the heap size argument without having to patch the script itself.

Would something like that be feasible?

srbala commented 3 years ago

@realModusOperandi do you still needed help on this? sample project has a props to modify, check for JVM props for heap setting (initial and max) https://github.com/WASdev/ci.docker.websphere-traditional/blob/master/samples/batch-compute-grid/was-config.props