@@ -29,70 +29,81 @@ FROM oracle/weblogic:12.2.1.3-developer
2929
3030# Maintainer
3131# ----------
32- MAINTAINER Monica Riccelli <monica.riccelli @oracle.com>
32+ MAINTAINER Richard Killen <richard.killen @oracle.com>
3333
3434ARG WDT_MODEL
3535ARG WDT_ARCHIVE
36+ ARG WDT_VARIABLE
3637
3738# WLS Configuration
3839# ---------------------------
39- ENV ADMIN_HOST="wlsadmin" \
40- NM_PORT="5556" \
41- MS_PORT="8001" \
42- DEBUG_PORT="8453" \
43- ORACLE_HOME=/u01/oracle \
44- SCRIPT_FILE=/u01/oracle/createAndStartWLSDomain.sh \
45- CONFIG_JVM_ARGS="-Dweblogic.security.SSL.ignoreHostnameVerification=true" \
46- PATH=$PATH:/u01/oracle/oracle_common/common/bin:/u01/oracle/wlserver/common/bin:/u01/oracle/user_projects/domains/${DOMAIN_NAME:-base_domain}/bin:/u01/oracle
40+ ENV ORACLE_HOME=/u01/oracle \
41+ PROPERTIES_FILE_DIR="${ORACLE_HOME}/properties" \
42+ SCRIPT_FILE=${ORACLE_HOME}/createAndStartWLSDomain.sh \
43+ DOMAIN_HOME_PARENT=${ORACLE_HOME}/user_projects/domains \
44+ DOMAIN_HOME="${DOMAIN_HOME_PARENT}/${DOMAIN_NAME}-base_domain}" \
45+ PATH=$PATH:${ORACLE_HOME}/oracle_common/common/bin:${ORACLE_HOME}/wlserver/common/bin:${DOMAIN_HOME}/bin:${ORACLE_HOME}
4746
48- # Domain and Server environment variables
47+ # WDT install and WDT user files
48+ # COPY
4949# ------------------------------------------------------------
50- ENV DOMAIN_NAME="${DOMAIN_NAME:-base_domain}" \
51- PRE_DOMAIN_HOME=/u01/oracle/user_projects \
52- ADMIN_PORT="${ADMIN_PORT:-7001}" \
50+ ENV COPY_PROPERTIES="poperties/docker_build" \
51+ INSTALL_HOME="/u01" \
5352 WDT_MODEL="$WDT_MODEL" \
54- WDT_ARCHIVE="$WDT_ARCHIVE"
53+ WDT_ARCHIVE="$WDT_ARCHIVE" \
54+ WDT_VARIABLE="WDT_VARIABLE"
5555
5656# Add files required to build this image
57- COPY container-scripts/* /u01/oracle/
58- COPY weblogic-deploy.zip /u01
59- COPY ${WDT_MODEL} ${ARCHIVE_FILE} /u01/
60-
61- # this file contains credentials.
62- # be sure to build with --force-rm to eliminate this container layer
63- COPY properties /u01/oracle
57+ COPY container-scripts/* ${INSTALL_HOME}
58+ COPY weblogic-deploy.zip ${INSTALL_HOME}
6459
65- # Create directory where domain will be written to
6660USER root
67- RUN chmod +xw /u01/oracle/*.sh && \
68- chmod +xw /u01/oracle/*.py && \
69- mkdir -p $PRE_DOMAIN_HOME && \
70- mkdir -p $PRE_DOMAIN_HOME/domains && \
71- chmod a+xr $PRE_DOMAIN_HOME && \
72- chown -R oracle:oracle $PRE_DOMAIN_HOME && \
73- cd /u01 && \
74- $JAVA_HOME/bin/jar xf /u01/weblogic-deploy.zip && \
75- chmod +xw /u01/weblogic-deploy/bin/*.sh && \
76- chmod -R +xw /u01/weblogic-deploy/lib/python && \
77- if [ -n "$WDT_MODEL" ]; then MODEL_OPT="-model_file /u01/$WDT_MODEL" ; fi && \
78- if [ -n "$WDT_ARCHIVE" ]; then ARCHIVE_OPT="-archive_file /u01/$WDT_ARCHIVE" ; fi && \
61+ RUN chmod +xw ${INSTALL_HOME}/*.sh && \
62+ mkdir +xwr ${PROPERTIES_FILE_DIR} && \
63+ chown -R oracle:oracle ${PROPERTIES_FILE_DIR} && \
64+ mkdir -p $DOMAIN_HOME_PARENT && \
65+ chown -R oracle:oracle $DOMAIN_HOME_PARENT && \
66+ chmod -R a+xwr $DOMAIN_HOME_PARENT
67+
68+ COPY ${WDT_MODEL} ${WDT_ARCHIVE} ${WDT_VARIABLE} ${COPY_PROPERTIES}/*.properties ${PROPERTIES_FILE_DIR}/
69+
70+ # export domain and server specific variables into environment
71+ RUN /bin/sh ${INSTALL_HOME}/setEnv.sh
72+
73+ # Default values - these values will be replaced by the values in the properties file
74+ # The DOMAIN_NAME in the variable file can be different than the DOMAIN NAME in the DOMAIN_HOME
75+ ENV DOMAIN_NAME="${DOMAIN_NAME:-base-domain}" \
76+ ADMIN_HOST="${ADMIN_HOST:-wlsadmin}" \
77+ ADMIN_PORT="${ADMIN_PORT:-7001}" \
78+ MS_PORT="${MS_PORT:-8001}" \
79+ DEBUG_PORT="${DEBUG_PORT:-8453}" \
80+ DOMAIN_HOME="${DOMAIN_PARENT}\$ {DOMAIN
81+ PATH=${PATH}:
82+
83+ # Run the WDT createDomain to create the domain home in the image
84+ RUN cd ${INSTALL_HOME} && \
85+ $JAVA_HOME/bin/jar xf ${INSTALL_HOME_BASE}/weblogic-deploy.zip && \
86+ chmod +xw ${INSTALL_HOME_BASE}/weblogic-deploy/bin/*.sh && \
87+ chmod -R +xw ${INSTALL_HOME_BASE}/weblogic-deploy/lib/python && \
88+ if [ -n " $WDT_MODEL" ]; then MODEL_OPT=" -archive_file ${INSTALL_HOME_BASE}/$WDT_ARCHIVE"; fi && \
89+ if [ -n " $WDT_ARCHIVE" ]; then ARCHIVE_OPT=" -archive_file ${INSTALL_HOME_BASE}/$WDT_ARCHIVE"; fi && \
90+ if [ -n " $WDT_VARIABLE" ]; then VARIABLE_OPT=" -variable_file ${INSTALL_HOME_BASE}/$WDT_VARIABLE"; fi && \
7991 /u01/weblogic-deploy/bin/createDomain.sh \
8092 -oracle_home $ORACLE_HOME \
8193 -java_home ${JAVA_HOME} \
82- -domain_parent $PRE_DOMAIN_HOME/domains \
94+ -domain_home ${DOMAIN_HOME} \
8395 -domain_type WLS \
84- -variable_file /u01/oracle/domain.properties \
96+ $VARIABLE_OPT \
8597 $MODEL_OPT \
8698 $ARCHIVE_OPT && \
87- chown -R oracle:oracle $PRE_DOMAIN_HOME && \
88- rm /u01/oracle/domain.properties
99+ rm ${PROPERTIES_FILE_DIR}/*
89100
90101VOLUME $PRE_DOMAIN_HOME
91102# Expose Node Manager default port, and also default for admin and managed server
92- EXPOSE $NM_PORT $ ADMIN_PORT $MS_PORT $DEBUG_PORT
103+ EXPOSE $ADMIN_PORT $MS_PORT $DEBUG_PORT
93104
94105USER oracle
95106WORKDIR $ORACLE_HOME
96107
97108# Define default command to start bash.
98- CMD ["/u01/oracle /startWLSDomain.sh" ]
109+ CMD [" ${ORACLE_HOME} /startWLSDomain.sh"]
0 commit comments