Deploying ibi WebFOCUS - Container Edition Appserver with MS-SQL server or Oracle as a Repository Database
- Procedure
-
Download the WebFOCUS - Container Edition tar file and extract it.
-
From the extracted WebFOCUS - Container Edition tar file, navigate to the
<webfocus-ce>/wfc
. -
Edit the Dockerfile and locate the "Download OpenSource drivers for repository" section.
-
In the "Download OpenSource drivers for the repository" section, update the driver url of MS-SQL server or Oracle.
RUN curl -q https://jdbc.postgresql.org/download/postgresql-42.3.7.jar \
-o $JETTY_BASE/lib/ext/pgclient.jar \Replace the previous code with the following code:
-
If you are using MS SQL, then use the following code.
RUN curl https://repo1.maven.org/maven2/com/microsoft/sqlserver/mssql-jdbc/7.2.2.jre11/mssql-jdbc-7.2.2.jre11.jar \
-o $JETTY_BASE/lib/ext/mssql-jdbc-7.2.2.jre11.jar \ -
If you are using Oracle, then use the following code.
RUN curl https://download.oracle.com/otn-pub/otn_software/jdbc/232-DeveloperRel/ojdbc11.jar \
-o $JETTY_BASE/lib/ext/ojdbc11.jar \ - Save the updated Dockerfile.
-
-
Run the
./build-images.sh
from<webfocus-ce>/scripts
directory. This creates a modified WebFOCUS Client (wfc) docker image. -
You need pre-created db user and database. Use the following commands to grant the appropriate permissions:
CREATE USER orcluser IDENTIFIED BY oraclpassword;
GRANT CREATE VIEW TO orcluser;
ALTER SESSION SET CURRENT_SCHEMA=orcluser;
GRANT CREATE SEQUENCE TO orcluser;
GRANT CREATE TABLE TO orcluser;
GRANT CREATE TRIGGER TO orcluser;
GRANT CREATE PROCEDURE TO orcluser;
GRANT CREATE SYNONYM TO orcluser;
GRANT CREATE TYPE TO orcluser;
GRANT CONNECT, RESOURCE TO orcluser;
GRANT CREATE SESSION TO orcluser;
GRANT UNLIMITED TABLESPACE TO orcluser; -
Navigate to the Helmfile
<webfocus-ce>/scripts/helmfile/environment/
directory. -
Edit the
<webfocus-ce>/scripts/helmfile/environments/wf.integ.yaml.gotmpl
file, navigate toappserver
, and edit the following sections:-
Edit the appserver parameter, and change the
usePgSQL
flag to "false". -
Update the
dbuser
anddbpassword
of your Oracle database. -
Update the
dbUrl
and place theURL
of your Oracle database.appserver:
usePgSQL: false
dbUser: <db_username>
dbPassword: <db_password>
dbUrl: jdbc:oracle:thin:@<host_name>:1521:ORCL;If you are using MS SQL, then replace the
jdbc:oracle:thin:@<host_name>:1521:ORCL
withjdbc:sqlserver://<host_name>:1433;databaseName=<db_name>
.
-
-
Edit the
config/install_cfg
section and add the new parameterIBI_REPOS_DB_DRIVER
with repository class value of respective db:appserver:
config:
install_cfg:
IBI_REPOS_DB_DRIVER: "oracle.jdbc.driver.OracleDriver"If you are using MS SQL, then replace the
oracle.jdbc.driver.OracleDriver
withcom.microsoft.sqlserver.jdbc.SQLServerDriver
. -
In the global section, update the repository class value as per your respective db:
global:
config:
REPOSITORY_CLASS: oracle.jdbc.driver.OracleDriver
JDBC_PATH: "${JETTY_BASE}/lib/ext/*"If you are using MS SQL, then replace the
oracle.jdbc.driver.OracleDriver
withcom.microsoft.sqlserver.jdbc.SQLServerDriver
. -
Lastly, deploy WebFOCUS - Container Edition to the cluster.