Docker
Quick answer
A Docker deployment packages IdentityIQ and Tomcat into an image, with database and secrets supplied via environment/config at runtime.
Key takeaways
- Prerequisites for Docker
- Step-by-step install path
- Common pitfalls and fixes
- Verification after install
Containerising IdentityIQ with Docker packages the application server and the IdentityIQ WAR into a reproducible image, while keeping the database and secrets external. Containers make environments consistent from a developer laptop to production, provided you resist the temptation to bake state or credentials into the image.
Prerequisites
- A base image with a supported JDK and Tomcat.
- The IdentityIQ WAR and configuration.
- An external database the container can reach.
- A secrets mechanism (environment variables or mounted files, not baked-in).
Step by step
- 1. Build the image: start from JDK+Tomcat, add the
identityiqWAR and base configuration. - 2. Externalise configuration: supply database connection and secrets at runtime via environment variables or mounted config.
- 3. Mount volumes for logs and any persistent configuration you need to survive container restarts.
- 4. Run the container, exposing the Tomcat port, pointed at the external database.
- 5. Initialise the schema against the external database (once), then start serving.
Verify
Confirm the container starts, connects to the database, and serves the login page. Check that restarting the container preserves nothing you did not intend, state should live only in the database and mounted volumes.
Container best practice
- Keep the database external, never inside the application container.
- Never bake secrets into the image; inject them at runtime.
- Treat containers as immutable, rebuild to change, do not patch running containers.
- Pin base-image and JDK versions to those supported by your release.
Common pitfalls
- Secrets in the image layers, a serious security leak.
- Expecting state to persist in the container filesystem.
- Unsupported JDK/Tomcat in the base image.
Want to learn this properly?
Our live, instructor-led SailPoint Training covers this hands-on, with real projects and a certification path.
Check your understanding
What are the prerequisites for Docker?
- A. A supported Java runtime, a reachable database, and the IdentityIQ files with correct permissions.
- B. Confirm the app server starts, the schema is present, and login works.
- C. The application and app-server logs, which usually point to database, Java or permission issues.
Show answer
A. A supported Java runtime, a reachable database, and the IdentityIQ files with correct permissions.
A supported Java runtime, a reachable database, and the IdentityIQ files with correct permissions.
How do you verify the install?
- A. A supported Java runtime, a reachable database, and the IdentityIQ files with correct permissions.
- B. The application and app-server logs, which usually point to database, Java or permission issues.
- C. Confirm the app server starts, the schema is present, and login works.
Show answer
C. Confirm the app server starts, the schema is present, and login works.
Confirm the app server starts, the schema is present, and login works.
Where do you look first on failure?
- A. Confirm the app server starts, the schema is present, and login works.
- B. A supported Java runtime, a reachable database, and the IdentityIQ files with correct permissions.
- C. The application and app-server logs, which usually point to database, Java or permission issues.
Show answer
C. The application and app-server logs, which usually point to database, Java or permission issues.
The application and app-server logs, which usually point to database, Java or permission issues.