You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
woodbine.nyc/services/readme.md

57 lines
1.5 KiB

## Services
Each of these yaml files define a service to be run via docker/podman compose.
Any supporting files are in the corresponding folder.
Each service should be self-contained.
### Required Services
#### [Backup](https://duplicity.us/docs.html)
we have a backup script that uses duplicity, this should be moved into a container, and set to run periodically
#### [Caddy](https://caddyserver.com/docs/)
caddy is the web server, and handles https certificates, and proxying to all the services.
#### [Zitadel](https://zitadel.com/docs) **WIP**
zitadel lets you have a single username and password to sign on to all your services.
### Optional Services
#### Web
Static web hosting, edit using webDAV. WebDAV is the easiest way for people to edit websites,
without having to sync anything.
### Adding a new service
There are three things to think about when adding a service:
1. How to enable sign-in with zitadel?
Generally, zitadel has some cli commands that we have put in scripts in the zitadel folder.
2. How to expose as a subdomain?
Add a volume mount of your reverse proxy config to your compose file.
# in the services: part of your compose file
caddy:
volumes:
- ./some-service/Proxyfile:/etc/caddy.d/some-service
# Proxyfile looks something like
someservice.{$DOMAIN} {
reverse_proxy someservice:4321
}
3. How will this be backed up and restored?
We backup all files in the data/ directory, but if your service interacts with a database like postgres, will need additional work.