Run Passphrase utility (DBUtils)

When deploying IBM PEM for the first time, run the Passphrase utility (DBUtils) to create a master key for the system passphrase and add it to the database.

Important: If you are migrating data from a previous version, do not run Passphrase utility (DBUtils).
Before you run the Podman/Docker command, perform the following steps:
  • Copy the database drivers to dbdrivers folder, .jks files to /resources/security/ folder, and provide passphrase in the passphrase.txt file.
  • Configure the properties in the Setup.cfg file.
Run the following command:
  • Docker:
    docker run --name="<container name>" --add-host=<host_name>:<IP address> -v <path to mount files>:/opt/IBM/Resources -v <path to log directory>:/opt/IBM/DBUtils/logs -v /etc/localtime:/opt/IBM/localtime:ro -e application="dbutils" -dt <image name>:<version>
  • Podman:
    podman run --name="<container name>" --add-host=<host_name>:<IP address> -v <path to mount files>:/opt/IBM/Resources:z -v <path to log directory>:/opt/IBM/DBUtils/logs:z -v /etc/localtime:/opt/IBM/localtime:ro -e application="dbutils" -dt <image name>:<version>

where, --add-host is optional.

Note: Enter the appropriate values within the angle (<>) brackets.
Important: As the application name is case-sensitive, you must enter the application name in the same case as provided in the run command. For example, application="DBUtils" is invalid.
Here,
  • <container name> - refers to the container name.
  • <path to mount files> - provide the absolute path of the directory where the mount files are extracted. For the contents of the mount directory, see Mount Directory structure.
  • --add-host=<host_name>:<IP address> - can add other hosts into the /etc/hosts file of the container by using one or more --add-host flags.
  • -v /etc/localtime:/opt/IBM/localtime:ro - synchronizes the container's time zone with the host machine's time zone.
  • <path to log directory> - copies description from the other topics on PEM/pr/pp deployment.

Sample run command

  • Docker:
    docker run --name="DB_Util" --add-host=<host_name>:<IP address> -v /home/MountResource/:/opt/IBM/Resources -v /home/logs/dbutils:/opt/IBM/DBUtils/logs -v /etc/localtime:/opt/IBM/localtime:ro -e application="dbutils" -dt registry.ng.bluemix.net/gold/pem:3.5.16
  • Podman:
    podman run --name="DB_Util" --add-host=<host_name>:<IP address> -v /home/MountResource/:/opt/IBM/Resources:z -v /home/logs/dbutils:/opt/IBM/DBUtils/logs:z -v /etc/localtime:/opt/IBM/localtime:ro -e application="dbutils" -dt registry.ng.bluemix.net/gold/pem:3.5.16
Note: Here, --add-host is optional.

Verifying the Docker/Podman run command

To verify whether the Docker run command is successful, run docker logs <container name>. The following messages are displayed:
Starting container
License accepted successfully.
Completed - Master key successfully added to the database.
Done
To verify whether the Podman run command is successful, run podman logs <container name>. The following messages are displayed:
Starting container
License accepted successfully.
Completed - Master key successfully added to the database.
Done
Note: Look for the specific message that indicates the run command is successful.

Configuring the properties of Setup.cfg file

Configure the following properties:
  • accept_license
  • proxy_host
  • proxy_port
  • customer_id
  • db_type
  • ssl_connection
  • db_port
  • db_host
  • db_name
  • db_schema
  • db_user
  • db_password
  • db_driver
  • db_max_pool_size
  • db_min_pool_size
  • db_aged_timeout
  • db_max_idle_time
  • db_sslTrustStoreName
  • db_sslTrustStorePassword
  • testmode_db_port
  • testmode_db_host
  • testmode_db_name
  • testmode_db_schema
  • testmode_db_user
  • testmode_db_password
  • testmode_db_driver
  • testmode_db_max_pool_size
  • testmode_db_min_pool_size
  • testmode_db_aged_timeout
  • testmode_db_max_idle_time
  • testmode_db_sslTrustStoreName
  • testmode_db_sslTrustStorePassword