Run and verify services
Containers
The default compose file compose.yml contains two containers:
xma-db-migratexma-api.
They both use the same image, but serve different purpose.
xma-db-migrate
This container uses the same API image as the main xma-api, but only calls the built-in admin-cli migrate command to migrate database structure. It must be run on the first launch or after image update. xma-api depends on this service, so it will be run automatically.
xma-api
This container host the API and holds all business logic for the attestation.
1. Start services
To start the services, run the command from the docker directory (where compose.yml is stored):
docker compose up -d
2. Verify services
docker compose ps
There should be one container running: xma-api. The xma-db-migrate checks and updates database if needed, and then shuts down.
docker compose logs -f
3. Available endpoints
At this point, there should be API available.
| Service | Endpoint |
|---|---|
| Attestation API | https://localhost:2511 |
Optionally, you can also enable Scalar. In appsettings.json, there is boolean property EnableScalar. By default, it is set to false. When setting it to true, Scalar will be available at https://localhost:2511/scalar.
In production it should be turned off.