summaryrefslogtreecommitdiff
path: root/modules/server/virtualisation.nix
diff options
context:
space:
mode:
authorFuwn <[email protected]>2024-09-20 05:36:20 -0700
committerFuwn <[email protected]>2024-09-20 05:36:20 -0700
commitd9747c64b038943253eaafdc59a49d5face46dab (patch)
treeb452d15a7f20e9f4bb70ec9f9040137bec1072f8 /modules/server/virtualisation.nix
parenthimeji: move containers over from seti (diff)
downloadnixos-config-d9747c64b038943253eaafdc59a49d5face46dab.tar.xz
nixos-config-d9747c64b038943253eaafdc59a49d5face46dab.zip
modules: server and core modules
Diffstat (limited to 'modules/server/virtualisation.nix')
-rw-r--r--modules/server/virtualisation.nix76
1 files changed, 76 insertions, 0 deletions
diff --git a/modules/server/virtualisation.nix b/modules/server/virtualisation.nix
new file mode 100644
index 0000000..3d8effe
--- /dev/null
+++ b/modules/server/virtualisation.nix
@@ -0,0 +1,76 @@
+{ secrets, ... }:
+let
+ containerEngine = "podman";
+in
+{
+ virtualisation = {
+ containers.enable = true;
+ docker.enable = containerEngine == "docker";
+
+ podman = {
+ enable = containerEngine == "podman";
+ dockerCompat = true;
+ defaultNetwork.settings.dns_enabled = true;
+ };
+
+ oci-containers = {
+ backend = containerEngine;
+
+ containers = {
+ september = {
+ image = "fuwn/september";
+ autoStart = true;
+ ports = [ "8084:80" ];
+
+ environment = {
+ CONDENSE_LINKS_AT_HEADINGS = "## Quick Links,# Fuwn[.me],## Footer";
+ EMBED_IMAGES = "2";
+ HEAD = ''<script async src="https://us.umami.is/script.js" data-website-id="fb2fa218-bbfc-419f-8b70-4f0b937df064"></script><link rel="icon" type="image/x-icon" href="https://avatars.githubusercontent.com/u/99055925?s=200&v=4">'';
+ MATHJAX = "true";
+ PLAIN_TEXT_ROUTE = "*.xml,*.txt";
+ PRIMARY_COLOUR = "#DCC6BD";
+ };
+ };
+
+ momoka = {
+ image = "fuwn/momoka";
+ autoStart = true;
+ ports = [ "70:70" ];
+ };
+
+ gigi = {
+ image = "fuwn/gigi";
+ autoStart = true;
+ ports = [ "79:79" ];
+ volumes = [ "/mnt/docker/gigi:/gigi/.gigi" ];
+ };
+
+ mayu = {
+ image = "fuwn/mayu";
+ autoStart = true;
+ ports = [ "8098:3000" ];
+ volumes = [ "/mnt/docker/mayu:/mayu/data" ];
+ };
+
+ locus = {
+ image = "ghcr.io/gemrest/locus";
+ autoStart = true;
+ ports = [ "1965:1965" ];
+ volumes = [ "/mnt/docker/locus:/locus/.locus" ];
+
+ environment = {
+ FINNHUB_TOKEN = secrets.finnhub_token;
+ HEADER_IMAGE = "https://ruu.neocities.org/images/animeHeader.gif";
+ };
+ };
+
+ bin = {
+ image = "quxfoo/wastebin";
+ autoStart = true;
+ ports = [ "8090:8088" ];
+ volumes = [ "/mnt/docker/bin:/root/db" ];
+ };
+ };
+ };
+ };
+}