nixos-config/terranix/workadventure-jitsi-setup/README.md

55 lines
1.5 KiB
Markdown
Raw Normal View History

2020-12-30 01:18:37 +01:00
# NixOS Server Example with plops
This setup shows:
2023-07-01 00:20:03 +02:00
- how to use a terranix module
- how to use 3rd party provision software after terraform.
- how to run terranix and terraform
2020-12-30 01:18:37 +01:00
Setup containing opinionated modules to deploy
[NixOS servers](https://nixos.org/)
on
[hcloud](https://www.hetzner.com/cloud)
using
[nixos-infect](https://github.com/elitak/nixos-infect)
with my
[plops](https://github.com/mrVanDalo/plops)
provisioning tool for NixOS,
2023-07-01 00:20:03 +02:00
which is an overlay on
2020-12-30 01:18:37 +01:00
[krops](https://cgit.krebsco.de/krops/about/).
After server creation,
the initial provisioning uploads the
nixos-infect
script and applys it.
After server creation and initialization
terranix/terraform generates
files used for the "real" provisioning
done by plops.
Of course instead of plops you can use every provsioning tool you like
here (e.g. NixOps, Ansible, ... )
# How to Run
## What you need
2023-07-01 00:20:03 +02:00
- a setup [passwordstore](https://www.passwordstore.org/).
- a [hcloud token](https://docs.hetzner.cloud/#overview-getting-started)
2020-12-30 01:18:37 +01:00
stored under `development/hetzner.com/api-token`
## Steps
2023-07-01 00:20:03 +02:00
- `terraform-prepare`: to create ssh keys.
- `terraform-build`: to run terranix and terraform do create server.
- `terraform-destroy`: to delete server (don't forget that step, or else it gets costly)
- `terraform-cleanup`: to delete ssh keys and terraform data.
2021-01-10 12:57:28 +01:00
## DNS
define domains with your nameserver and update `jitsi.nix` and `workadventure.nix`.
2023-07-01 00:20:03 +02:00
- `meet.${domain}` to given ip4 address
- `party.${domain}` to given ip4 address
- `*.party.${domain}` to given ip4 address