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"
}
| Parameter | Type | Required | Description |
|---|---|---|---|
project_uuid | string | Yes | Target project UUID |
environment_name | string | Yes | Target environment name |
server_uuid | string | Yes | Server to deploy on |
destination_uuid | string | Yes | Docker network/destination UUID |
type | string | Yes | Service template type (e.g., plausible, minio, grafana) |
name | string | No | Service 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}
| Parameter | Type | Default | Description |
|---|---|---|---|
delete_configurations | boolean | true | Delete configuration files |
delete_volumes | boolean | false | Delete persistent volumes |
docker_cleanup | boolean | true | Remove 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}