WebSphere Commerce runtime environment overview
WebSphere Commerce is separated into different applications that run within Docker containers. IBM provides the following Docker images...
- Transaction server Docker image (ts-app)
- Transaction server running on the WebSphere Application Server. Contains transactional business logic and APIs that serve the other servers of a WebSphere Commerce application. If you migrate the store from WebSphere Commerce Version 8, the store is running in the Transaction server Docker, not the Store server Docker.
- IBM HTTP Server Docker image (ts-web)
- IBM HTTP Server is used as the web server to access the WebSphere Commerce tooling such as the Management Center and the Administration console.
- search-app Docker image (search-app)
- Search server to run the search (Solr) index. The search-app Docker image can be set as different search node types:
search-master Handles indexing from the staging or authoring node, and provides read/write capabilities. Multiple-node configurations are not supported for the search-master; there can be only one. To set the Docker image as the search-master, specify the following Docker parameters: SOLR_MASTER=true
SOLR_SLAVE=false
search-repeater Triggers by index replication and synchronizes the index from the search-master. Search-repeater does not provide write capabilities. To set the Docker image as a search-repeater, specify the following Docker parameters: SOLR_MASTER=true
SOLR_SLAVE=true
search-slave Synchronizes index from the search-repeater. To set the Docker image as the search-slave, specify the following Docker parameters: SOLR_MASTER=false
SOLR_SLAVE=true
- Store server Docker image (crs-app)
- Store server to serve store assets including JSP files, e-Marketing Spots, and images. If you migrate the store from WebSphere Commerce Version 8, the store is running in the Transaction server Docker, not the Store server Docker.
- Customization server Docker image (xc-app)
- Customization server, which runs custom code we can create to extend IBM provided xC extension points.
- Utility server Docker image (ts-utils )
- Utility project that holds scripts to service WebSphere Commerce operations such as loading access control policies, loading store data, and cleaning database of obsolete objects.
Db2 Docker image
- Preconfigured Db2 database to be used as a development or test database. (in a runtime environment). This Docker image cannot be used as a production database.
In addition to the Docker images, we will need to use IBM Db2 or Oracle as the database. For development and test environments we can use the preconfigured Db2 Docker container. We can also consider creating a Docker container to run the database, which can help simplify deploying development, test, or quality assurance environments.
We can build on top of the IBM provided Docker images to include custom code, custom configurations, and additional third party certificates. With the WebSphere Commerce application running on containers, we can deploy new containers separately as needed.
Sample WebSphere Commerce runtime system
Assuming that we cluster the containers and we have an authoring and live environment, our system of containers and container interactions might resemble the following scenario with a WebSphere Commerce Version 9 store on the remote store server (crs-app):
A Web server (ts-web) does not exist on the live instance. For a WebSphere Commerce Version 9 store, the ts-web container is not needed. Storefront requests are handled directly by the Store server (crs-app). For access to WebSphere Commerce tools directly on the live instance (for example, to make emergency updates to the live store through the tools), then we can also deploy ts-web to the live instance.
If we migrated the store from WebSphere Commerce Version 8, then the store resides on the Transaction server (ts-app) instead of the Store server (crs-app).
Related reference
Manage the container lifecycle of the production environment
Docker container start up logic for 9.0.0.0 and 9.0.0.1
Docker container start up configuration parameters