Oracle WebLogic 14.1.1 under Podman

Posted by Dirk Nachbar on Monday, May 18, 2020 with No comments
Since a few weeks the latest release of the Oracle WebLogic Server is available and I was testing it already on native Linux Servers and within Docker.
Now it's time to check Oracle WebLogic Server under Podman 

At first you will need an Oracle Linux 8.2 Server with podman. A really good instruction you can find at

As a starting point, just clone my GitHub Repository there you will find some Dockerfiles for Oracle WebLogic Server

The first task is to create a JDK 11 Podman Image.

Under my GitHub Repository in the subdirectory OracleWebLogic/dockerfiles/ you will find a Dockerfile for a JDK 11 Image.
Simply download from Oracle Technology Network the Linux Compressed Archive of the JDK 11 and place it in the directory OracleWebLogic/dockerfiles/
Then just run the podman build command as follows:

[root@podman java-11]# 
[root@podman java-11]# cat Dockerfile
# Dockerfile for creating Oracle JDK 11 Images based on OL latest
FROM oraclelinux:7-slim

MAINTAINER Dirk Nachbar <>

ENV JAVA_PKG=jdk-11*linux-x64_bin.tar.gz \

ADD $JAVA_PKG /usr/java/

RUN export JAVA_DIR=$(ls -1 -d /usr/java/*) && \
    ln -s $JAVA_DIR /usr/java/latest && \
    ln -s $JAVA_DIR /usr/java/default && \
    alternatives --install /usr/bin/java java $JAVA_DIR/bin/java 20000 && \
    alternatives --install /usr/bin/javac javac $JAVA_DIR/bin/javac 20000 && \
    alternatives --install /usr/bin/jar jar $JAVA_DIR/bin/jar 20000

# Execute the podman build command

[root@podman java-11] podman build -t oracle/jdk:11 .
STEP 1: FROM oraclelinux:7-slim
STEP 2: MAINTAINER Dirk Nachbar <>
STEP 3: ENV JAVA_PKG=jdk-11*linux-x64_bin.tar.gz     JAVA_HOME=/usr/java/default
STEP 4: ADD $JAVA_PKG /usr/java/
STEP 5: RUN export JAVA_DIR=$(ls -1 -d /usr/java/*) &&     ln -s $JAVA_DIR /usr/java/latest &&     ln -s $JAVA_DIR /usr/java/default &&     alternatives --install /usr/bin/java java $JAVA_DIR/bin/java 20000 &&     alternatives --install /usr/bin/javac javac $JAVA_DIR/bin/javac 20000 &&     alternatives --install /usr/bin/jar jar $JAVA_DIR/bin/jar 20000
STEP 6: COMMIT oracle/jdk:11

# Check the JDK 11 Image

[root@podman jdk11]# podman images
REPOSITORY                      TAG      IMAGE ID       CREATED          SIZE
localhost/oracle/jdk            11       14e68c77ac48   25 seconds ago   986 MB   7-slim   3f15c01b91bb   13 days ago      126 MB

Now as next we can build the Oracle WebLogic Image. For this download the Oracle WebLogic 14c Generic Installer from and place the installer (dont unzip it) into the subirectory OracleWebLogic/dockerfiles/
After you have placed the Generic Installer, you can execute the podman build to build the Oracle WebLogic Image as follows

[root@podman] podman build -t oracle/weblogic: -f Dockerfile.optimized
STEP 1: FROM oracle/jdk:11 AS base
STEP 2: MAINTAINER Dirk Nachbar <>
STEP 3: ENV ORACLE_HOME=/u01/oracle     USER_MEM_ARGS=""     SCRIPT_FILE=/u01/oracle/     PATH=$PATH:${JAVA_HOME}/bin:/u01/oracle/oracle_common/common/bin:/u01/oracle/wlserver/common/bin
STEP 4: RUN mkdir -p /u01 &&     chmod a+xr /u01 &&     useradd -b /u01 -d /u01/oracle -m -s /bin/bash oracle
STEP 5: COPY container-scripts/ container-scripts/ /u01/oracle/
STEP 7: ENV     FMW_JAR=fmw_14.
STEP 8: FROM 1cf02aa4288004bf699f95255d76c9dbefe2c197c449ef530374afdde4883b9b AS builder
STEP 9: COPY $FMW_PKG install.file oraInst.loc /u01/
STEP 10: RUN  chown oracle:oracle -R /u01 &&      chmod +xr $SCRIPT_FILE
STEP 11: USER oracle
STEP 12: RUN cd /u01 && ${JAVA_HOME}/bin/jar xf /u01/$FMW_PKG && cd - &&     ls /u01 &&     ${JAVA_HOME}/bin/java -jar /u01/$FMW_JAR -silent -responseFile /u01/install.file -invPtrLoc /u01/oraInst.loc -jreLoc $JAVA_HOME -ignoreSysPrereqs -force -novalidation ORACLE_HOME=$ORACLE_HOME INSTALL_TYPE="WebLogic Server" &&     rm /u01/$FMW_JAR /u01/$FMW_PKG /u01/oraInst.loc /u01/install.file
fmw_14.     install.file  oracle  oraInst.loc
Launcher log file is /tmp/OraInstall2020-05-18_09-19-42AM/launcher2020-05-18_09-19-42AM.log.
Extracting the installer . . . . . . . Done
Checking if CPU speed is above 300 MHz.   Actual 2194.918 MHz    Passed
Checking swap space: must be greater than 512 MB.   Actual 4067 MB    Passed
Checking temp space: must be greater than 300 MB.   Actual 23718 MB    Passed
Preparing to launch the Oracle Universal Installer from /tmp/OraInstall2020-05-18_09-19-42AM
Log: /tmp/OraInstall2020-05-18_09-19-42AM/install2020-05-18_09-19-42AM.log
Setting ORACLE_HOME...
Copyright (c) 1996, 2020, Oracle and/or its affiliates. All rights reserved.
Reading response file..
Skipping Software Updates
Validations are disabled for this session.
Verifying data
Copying Files
Percent Complete : 10
Percent Complete : 20
Percent Complete : 30
Percent Complete : 40
Percent Complete : 50
Percent Complete : 60
Percent Complete : 70
Percent Complete : 80
Percent Complete : 90
Percent Complete : 100

The installation of Oracle Fusion Middleware 14.1.1 WebLogic Server and Coherence completed successfully.
Logs successfully copied to /u01/oracle/.inventory/logs.
STEP 13: FROM 1cf02aa4288004bf699f95255d76c9dbefe2c197c449ef530374afdde4883b9b
STEP 14: COPY --chown=oracle:oracle --from=builder $ORACLE_HOME $ORACLE_HOME
STEP 15: COPY --chown=oracle:oracle --from=builder $JAVA_HOME $JAVA_HOME
STEP 17: CMD ["/u01/oracle/"]
STEP 18: COMMIT oracle/weblogic:

# Now let's verify the podman Image for the WebLogic 

[root@podman] podman images
REPOSITORY                      TAG                    IMAGE ID       CREATED       SIZE
localhost/oracle/weblogic   fba87010a1c6   2 hours ago   3.11 GB
localhost/oracle/jdk            11                     14e68c77ac48   3 hours ago   986 MB   7-slim                 3f15c01b91bb   13 days ago   126 MB

The final step is to create a pod and a running container with Oracle WebLogic Server
The pod creation and the container creation can be done within one single command:

[root@podman] podman run -d --name [Name of your Container] --pod=new:[Pod Name] \
             -p 7001:7001 -p 9002:9002 \
             -v [Directory to your file]:/u01/oracle/properties \
             -e ADMINISTRATION_PORT_ENABLED=true -e DOMAIN_NAME=[WebLogic Domain Name] \
# E.g.:
[root@podman] podman run -d --name wls1411optimized --pod=new:pod_wls1411 \
             -p 7001:7001 -p 9002:9002 \
             -v /work/Docker/OracleWebLogic/dockerfiles/ \
             -e ADMINISTRATION_PORT_ENABLED=true -e DOMAIN_NAME=OptimizedDomain \

# Let's check the pod creation:
[root@podman] podman pod ls
POD ID         NAME          STATUS    CREATED          # OF CONTAINERS   INFRA ID
4e0b599d0083   pod_wls1411   Running   12 seconds ago   2                 68ccf98d911a

# Let's check the WebLogic Container:
[root@podman] podman ps
CONTAINER ID  IMAGE                                           COMMAND               CREATED         STATUS             PORTS                   NAMES
5a1e9a6fcd3a  localhost/oracle/weblogic:  /u01/oracle/creat...  42 seconds ago  Up 41 seconds ago>7001/tcp  wls1411optimized

As you can see, it's really easy to get Oracle WebLogic Server 14c up and running under Podman.