Most of WebLogic’s config utilities can run in a console/text mode if you need to run them from a terminal session in text mode, by passing the option: -mode=console
E.g. the apps here: /[middlewarehome]/wlserver_10.3/common/bin, like config.sh will run in console mode.
config_builder.sh however does not, and only runs in GUI mode. This is an issue if you’re running WebLogic in a Docker container. All is not lost however, as you can forward X out of a Docker container, but it takes a few steps to get running.
Follow the steps in this logged issue to install and run socat, and then pass ‘-e DISPLAY=192.168.99.1:0’ where the IP address is the address of the vbox interface. On my Mac this looked like:
socat TCP-LISTEN:6000,reuseaddr,fork UNIX-CLIENT:\"$DISPLAY\"
docker run -it -e DISPLAY=192.168.99.1:0 imageid bash
My image included xterm and dependencies installed via the Dockerfile with:
RUN yum install -y xterm
When attempting to run config.sh in GUI mode however, it gave me this error:
Unable to instantiate GUI, defaulting to console mode
This is fine for config.sh as it runs in console mode, but since config_builder.sh does not, it must run in GUI mode with forwarded XWindows.
This post on ServerFault held the key – you need to also install libXtst:
yum install libXtst
Now all the utils will run in GUI mode forwarding X to your host. On Mac OS X this assumes you have XQuartz installed too.