Run Engine commands for Search server

Use the following Run Engine commands to configure the Search server Docker container. The following table contains the default Run Engine commands for the server to start. To view the scripts, start with /SETUP/bin/entrypoint.sh. To implement custom logic or override existing configurations, ensure that the necessary parameters can be resolved by the commands during startup.

Description Command
Set connection to Transaction server host run set-transaction-server hostName securedPort

    hostName Transaction server host name.
    Port Transaction server port.

Set connection to Store server host run set-store-server hostName port

    hostName Store host name.
    port Store port.

Set connection to Customization server host run set-xc-server hostName port

    hostName Customization server host name.
    port Customization server port.

Update database user and password credentials used to connect to the database. run update-datasource-cred jndi db2User db2Pass

    jndi The name of the JNDI. For example, the default value for the Search server is jdbc/wcdb.
    db2User Database user name.
    db2Pass Database password.

Update database name, database server host name, database server port credentials used to connect to the database. run update-datasource-db jndi database db2Host db2Port sslConnection

    jndi The name of the JNDI. For example, the default value for the Search server is jdbc/wcdb.
    database Database name.
    db2Host Database host name.
    db2Port Database port number.
    sslConnection (Optional) Enable or disable the SSL protocol. If set to True, SSL is used. If not set, or set to False, SSL is disabled.

Set JVM properties spi.username, spi.password

run set-spi-user userName ASCII_encrypted_password

    userName SPI username. The default user name is spiuser.
    password The ASCII encrypted password. We can encrypt the password by using utilities_root/wcs_encrypt.sh utility.

Based on cloudAccout name, user name, password, userType, accoutAlias to create JNDI entry for this Cloudant account. run add-cloudant-account cloudantAccount userName password accountAlias

    cloudantAccount The Cloudant account name. For example, if the account URI is https://account.cloudant.com, the parameter value must be account.
    userName The name of the user.
    password The plain text password.
    accountAlias The alias for the account.

Update Cloudant account information. run update-cloudant-account cloudantAccount userName password accountAlias

    cloudantAccount The Cloudant account name. For example, if the account URI is https://account.cloudant.com, the parameter value must be account.
    userName The name of the user.
    password The plain text password.
    accountAlias The alias for the account.

Add database connection datasource. run add-datasource jndi database dbtype dbHost dbPort dbUserdbPass xa sslConnect

    jndi The name of the JNDI. For example, the default value for the Search server is jdbc/wcdb.
    database The name of the database.
    dbType The database type. For example, db2.
    dbHost The host name of the database server.
    dbPort The database server port.
    dbUser The database user name.
    dbPass The database password.
    xa (Boolean) Determines whether it is an XA data source. Set this value to false if we are using the default datasource.
    sslConnect (Boolean) Enable SSL connection.

Add JNDI entry. run add-jndi-entry name value

    name JNDI name.
    value JNDI value.

Add configurations to support IBM ID. run add-oidc-configuration serverHost blueIdHost clientId clientSecret

    serverHost The server host name http/https protocol. The port number is optional.
    blueIdHost The blue ID environment host name. Either 'prepiam.toronto.ca.ibm.com' for preproduction or 'idaas.iam.ibm.com' for production.
    clientId The client ID of the server is registered with an IBM ID endpoint.
    clientSecret The client secret for the Server to authenticate with an IBM ID endpoint.

Create a new user registry. run add-spi-registry registryId username password

    registryId The basic registry unique name.
    username The username for the SPI integration user.
    password The password for the SPI integration user.

Update jvm.options to add new JVM properties. run add-system-property name value

    name JVM System property name.
    value JVM System property value.

Update WebSphere Liberty home and server name for Run Engine configuration properties. run generate-config-properties LibertyHome ServerName

    LibertyServerHome Location of WebSphere Liberty is installed.
    ServerName Name of the WebSphere Liberty server.

Retrieve the start state of an application in the Liberty server. If the application is not started within 3 minutes, error code 1 is returned. run get-status application_name

    application_name The name of the application EAR.

Remove SPI registry form userregistry.xml. run remove-spi-registry-user registryId username [group]

    registryId The basic registry unique name.
    username The user name.
    group (Optional) The group from which to remove the user. If not specified, user is removed from the default 'spiIntegration' group.

Copy trace setting file (logging.xml) to WebSphere Liberty server home. Default location is /SETUP/server/root/logging.xml run reset-trace-specification
Update initHeapSize and maxHeapSize in jvm.option file. run set-heap-size initHeapSize maxHeapSize

    initHeapSize Minimum Heap size.
    maxHeapSize Maximum Heap size.

Update jndi.xml to create or update a JNDI entry. run set-jndi-entry name value

    name JNDI name.
    value JNDI value.

Configure Kafka. run set-kafka-server kafkaTopicPrefix listOfZookeeper

    kafkaTopicPrefix Kafka topic prefix.
    listOfZookeeper List of ZooKeeper (zookeeperId1, zookeeperId2,.., zookeeperIdn) must be separated by comma. Zookeeper IDs must follow the pattern: hostname:port.

Set JNDI entry.

com.ibm.commerce.foundation.server.services.commerce.integration.sessionkey

run set-session-key sessionKey

    sessionKey An encrypted session key.

Add JVM property. run set-system-property name value

    name JVM System property name value.

Change trace log directory. run set-trace-log-directory directory

    directory The location to write the logs.

Change trace level. run set-trace-specification spec

    spec The new logging trace specification.

Update JNDI entry. run update-jndi-entry name value

    name JNDI name.
    value JNDI value.

Update blueID host. run update-oidc-blueIdHost blueIdHost

    blueIdHost The blue ID environment host name. Either 'prepiam.toronto.ca.ibm.com' for preproduction or 'idaas.iam.ibm.com' for production.

Update isClientSideRedirectSupported attribute. run update-oidc-client-side-redirect-supported clientSideRedirectSupported

    clientSideRedirectSupported The value to support client-side redirect or not, true or false.

Update client id and client secret for OIDC configuration. run update-oidc-clientIdSecret clientId clientSecret

    clientId The client ID of the server is registered with an IBM ID endpoint.
    clientSecret The client secret for the Server to authenticate with an IBM ID endpoint.

Update context path for OIDC configuration. run add-oidc-context-root contextRoot

    contextRoot The context root of the Liberty application.

Update OIDC redirect server host name. run update-oidc-redirect-server-host serverHost

    serverHost The server host name with HTTP/HTTPS protocol. The port number is optional.

For WebSphere eXtreme Scale integration, enable the eXtreme Scale feature.Tip: For more information about this integration, see Integrating WebSphere Commerce version 9 with WebSphere eXtreme Scale. run enable-xs-feature xsServerName xsServerPort

    xsServerName The host name of the WebSphere eXtreme Scale catalog server.
    xsServerPort The listener port of the WebSphere eXtreme Scale catalog server.

For WebSphere eXtreme Scale integration, connect a specific cache instance to the WebSphere eXtreme Scale cache provider.Tip: For more information about this integration, see Integrating WebSphere Commerce version 9 with WebSphere eXtreme Scale. run connect-searchcache-wxs jndiName cacheSize optional:gridName optional:mapName

    jndiName The Java Naming and Directory Interface (JNDI) name of the cache we want to update.
    cacheSize The new size of the cache.
    gridName (Optional) The name of the grid on the WebSphere eXtreme Scale server.
    mapName (Optional) The name of the map on the WebSphere eXtreme Scale server.


1The SPI username and password is used for inter-component server API invocation only. The spiuser is configured in the Store server, Search server and Customization server, and used in the API invocation from those servers to the Transaction server. The images need to be configured with the spiuser password, otherwise the component servers cannot connect to the Transaction server.