Skip to main content

Services

Services are pre-configured applications deployed from Docker Compose templates. Corelix includes 100+ built-in templates (Plausible, Minio, Grafana, Ghost, Gitea, etc.) and supports custom template sources.

List Services​

GET /api/v1/services

Response:

{
"data": [
{
"uuid": "svc-abc123",
"name": "plausible-analytics",
"status": "running:healthy",
"type": "plausible",
"created_at": "2024-01-15T10:30:00Z"
}
]
}

Get Service​

GET /api/v1/services/{uuid}

Returns full service configuration including all sub-applications, databases, Docker Compose content, and environment variables.

Create Service​

Deploy a one-click service from a template:

POST /api/v1/services
{
"project_uuid": "proj-abc123",
"environment_name": "production",
"server_uuid": "srv-abc123",
"destination_uuid": "dest-abc123",
"type": "plausible",
"name": "my-analytics"
}
ParameterTypeRequiredDescription
project_uuidstringYesTarget project UUID
environment_namestringYesTarget environment name
server_uuidstringYesServer to deploy on
destination_uuidstringYesDocker network/destination UUID
typestringYesService template type (e.g., plausible, minio, grafana)
namestringNoService name

Response: 201 Created

{
"uuid": "svc-abc123",
"name": "my-analytics",
"type": "plausible"
}
Available templates

To see the full list of available service templates, check the template list in the Corelix dashboard under New Resource > Service.

Update Service​

PATCH /api/v1/services/{uuid}
{
"name": "updated-name",
"docker_compose_raw": "version: '3.8'\nservices:\n ..."
}

Delete Service​

DELETE /api/v1/services/{uuid}
ParameterTypeDefaultDescription
delete_configurationsbooleantrueDelete configuration files
delete_volumesbooleanfalseDelete persistent volumes
docker_cleanupbooleantrueRemove Docker resources

Response:

{
"message": "Service deleted."
}

Service Actions​

Start Service​

POST /api/v1/services/{uuid}/start

Stop Service​

POST /api/v1/services/{uuid}/stop

Restart Service​

POST /api/v1/services/{uuid}/restart

Persistent Storage​

List Volumes​

GET /api/v1/services/{uuid}/storages

Add Volume​

POST /api/v1/services/{uuid}/storages

Delete Volume​

DELETE /api/v1/services/{uuid}/storages/{storage_uuid}

Environment Variables​

List Variables​

GET /api/v1/services/{uuid}/envs

Update Variable​

PATCH /api/v1/services/{uuid}/envs
{
"key": "ADMIN_EMAIL",
"value": "[email protected]"
}

Bulk Update​

PATCH /api/v1/services/{uuid}/envs/bulk

Delete Variable​

DELETE /api/v1/services/{uuid}/envs/{env_uuid}