Liberty in Containers Recipe

  1. Review the Java in Containers recipes
  2. Execute configure.sh as the last step in your Containerfile to make it fit-for-purpose and initialize the shared class cache.
  3. Review the Configuring Security best practices
  4. If using IBM or Semeru Java, mount a shared volume for the shared class cache in ${WLP_OUTPUT_DIR}/.classCache
  5. Consider logging in JSON format for consumption by centralized logging.
  6. If using IBM or Semeru Java and startup time is highly variable, review the potential impact of the maximum heap size on the shared class cache.
  7. Unless an application uses 2 phase commit (2PC) and transaction logs are properly handled (e.g. in a database, peer recovery, on a shared disk, etc.), then consider setting the JVM option -Dcom.ibm.tx.jta.disable2PC=true so that an application doesn't accidentally use 2PC and risk unrecoverable transactions.
  8. OpenShift:
    1. Review the Application Monitoring options.
  9. Review the Liberty recipe
  10. Review the Java recipes
  11. Review the Operating System Recipes

For details, see the Liberty in Containers chapter.