Thursday, August 20, 2026

A Better PeopleSoft Container "Healthcheck"



The very first PeopleSoft DPK container-native image was released two weeks ago, and we have been heads-down testing, optimizing, and strategizing our own container deployments.

Using the following command to bring up a full PeopleSoft stack is fantastic!

podman compose start

But we noticed one significant problem:

The Application Server domain would try to launch before the database TNS Listener was ready to accept connections.

This caused the Application Server domain (APPDOM) in the midtier container to fail on startup because it couldn't connect to the database. Our temporary workaround was to simply wait a minute, then manually launch psadmin.

podman exec -it --user psadm2 midtier bash -lc psadmin

But wouldn't it be nice if the full composition could wait to start the midtier until the database was ready?

What's great about Podman Compose is that it has built-in dependency checking between containers and can wait for one container to finish before loading dependent containers. To resolve our issue, therefore, we just had to change our dependency-checking algorithm, also known as the healthcheck. The default healthcheck just checks whether a file exists. This is important on the initial load (podman compose up -d) because it causes the midtier (app server and web server) to wait for the database to finish loading. But this approach falls short for subsequent launches with podman compose start. We resolved this issue by extending the healthcheck to also check the status of the listener:

    healthcheck:
      test: ["CMD-SHELL", "test -e /opt/oracle/oradata/.EP92U057.plugged && lsnrctl status | grep -qi ep92u057"]
      interval: 30s
      timeout: 5s
      retries: 30
      start_period: 5m

Have you downloaded the latest PeopleSoft Podman Container-native DPK? If so, let us know your thoughts and questions!

We are full steam ahead on a new course titled Containers for PeopleSoft that will release soon. Sign up now to get notified as soon as this course is available. Or, create a free account to stay updated on all the latest news from JSMpros!

No comments: