website/content/projects/service/index.md

59 lines
1.3 KiB
Markdown

+++
title = "Service"
+++
# Service Overview
`service` is the default `BaguetteOS` service manaager.
It can:
- start, stop and request the status of a service, <u>and its dependencies</u>
- remember the PID of a service
- configure a service based on OS-provided templates
- ports are auto-configured (unless specified)
- passwords are generated at service start-up
- system users and groups are created for each service
- databases are created, configured with generated users and passwords
- back-up the service data
## Current development
`service` lacks simple scripts for managing databases, has no backup integration and needs more templates.
### TODO: logging
Currently, logging is simply a pair of files created in `/var/log` for each service.
The naming convention is:
```zsh
/var/log/$servicename.$environment.{err,log}
```
### TODO: databases
Currently, there is only support for `postgresql`.
### TODO: backup
There is currently on back-up system.
A simple `backup` tool should be developed, allowing users to provide back-up endpoints.
Here is a quick overview of what we have in mind:
```zsh
# backup add ssh:example.com:/srv/backup
```
### TODO: templates
Templates should be added for these services:
- php-fpm
- certificates
- hackmd
- prosody
- wordpress
... and a lot more!