Verify Service Containers
The production template contains six application images. PostgreSQL and Memgraph are internal state services. Public origins use standard HTTPS. Coolify target URLs include the container port.
Prerequisites
Section titled “Prerequisites”Use a supported container engine and the pinned Compose contract. Obtain the exact release manifest and the lane configuration without changing them.
Actions
Section titled “Actions”- Render the configuration with
docker compose --env-file .env.example configfrom the infrastructure production Compose directory. - Confirm that every application image resolves to an immutable digest from the release manifest.
- Confirm that each service has all persistent volumes attached before it starts.
| Service | Container port | Persistent state |
|---|---|---|
| site | 80 | No service volume. |
| auth | 8090 | auth-data. |
| learn | 80 | No service volume in the pinned contract. |
| tracker | 3000 | tracker-data. |
| nexus | 8452 | nexus-data. |
| pckg | 8082 | pckg_packages; PostgreSQL uses pckg_pg_data. |
Expected result
Section titled “Expected result”Compose validation succeeds. Every required container is healthy, has an immutable digest, and uses the correct persistent volume boundary.
Recovery
Section titled “Recovery”If Compose validation fails, inspect the container logs, fix the lane input, and render it again. If a volume name differs from the recorded lane, stop and do not delete or recreate a persistent volume to make validation pass.
Next task
Section titled “Next task”Verify production delivery or hand off the verified container contract to the production operator.