example vm setup
This commit is contained in:
parent
abf2f2467f
commit
fc41d62d8d
33
flake.nix
33
flake.nix
|
@ -22,14 +22,31 @@
|
||||||
|
|
||||||
nixosConfigurations.example = nixpkgs.lib.nixosSystem {
|
nixosConfigurations.example = nixpkgs.lib.nixosSystem {
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
modules = [ {
|
modules = [
|
||||||
networking.hostName = "example";
|
(nixpkgs + "/nixos/modules/virtualisation/qemu-vm.nix")
|
||||||
users.users.root.initialPassword = "";
|
{
|
||||||
services.caveman.hunter = {
|
networking.hostName = "example";
|
||||||
enable = true;
|
users.users.root.initialPassword = "";
|
||||||
logLevel = "TRACE";
|
services.caveman.hunter = {
|
||||||
};
|
enable = true;
|
||||||
} self.nixosModule ];
|
logLevel = "TRACE";
|
||||||
|
};
|
||||||
|
services.caveman.gatherer = {
|
||||||
|
enable = true;
|
||||||
|
logLevel = "TRACE";
|
||||||
|
};
|
||||||
|
virtualisation.forwardPorts = [ {
|
||||||
|
# proto = "tcp";
|
||||||
|
from = "host";
|
||||||
|
# host.address = "0.0.0.0";
|
||||||
|
host.port = 8000;
|
||||||
|
# guest.address = "10.0.2.15";
|
||||||
|
guest.port = 8000;
|
||||||
|
} ];
|
||||||
|
networking.firewall.allowedTCPPorts = [ 8000 ];
|
||||||
|
}
|
||||||
|
self.nixosModule
|
||||||
|
];
|
||||||
};
|
};
|
||||||
} //
|
} //
|
||||||
utils.lib.eachSystem (with utils.lib.system; [ x86_64-linux aarch64-linux ]) (system: let
|
utils.lib.eachSystem (with utils.lib.system; [ x86_64-linux aarch64-linux ]) (system: let
|
||||||
|
|
|
@ -231,7 +231,7 @@ pub async fn start(
|
||||||
.merge(SpaRouter::new("/assets", "assets"));
|
.merge(SpaRouter::new("/assets", "assets"));
|
||||||
|
|
||||||
// run it
|
// run it
|
||||||
let addr = SocketAddr::from(([127, 0, 0, 1], listen_port));
|
let addr = SocketAddr::from(([0, 0, 0, 0], listen_port));
|
||||||
axum::Server::bind(&addr)
|
axum::Server::bind(&addr)
|
||||||
.serve(app.into_make_service())
|
.serve(app.into_make_service())
|
||||||
.await
|
.await
|
||||||
|
|
|
@ -138,7 +138,7 @@ in
|
||||||
# redis restore can be slow
|
# redis restore can be slow
|
||||||
systemd.services.redis-caveman.serviceConfig.TimeoutStartSec = "infinity";
|
systemd.services.redis-caveman.serviceConfig.TimeoutStartSec = "infinity";
|
||||||
|
|
||||||
services.redis.servers.caveman = lib.mkIf cfg.hunter.enable {
|
services.redis.servers.caveman = {
|
||||||
enable = true;
|
enable = true;
|
||||||
port = cfg.redis.port;
|
port = cfg.redis.port;
|
||||||
settings = {
|
settings = {
|
||||||
|
@ -150,7 +150,12 @@ in
|
||||||
enable = true;
|
enable = true;
|
||||||
ensureDatabases = [ "caveman" ];
|
ensureDatabases = [ "caveman" ];
|
||||||
ensureUsers = [ {
|
ensureUsers = [ {
|
||||||
name = databaseUser;
|
name = "caveman-gatherer";
|
||||||
|
ensurePermissions = {
|
||||||
|
"DATABASE caveman" = "ALL PRIVILEGES";
|
||||||
|
};
|
||||||
|
} {
|
||||||
|
name = "caveman-hunter";
|
||||||
ensurePermissions = {
|
ensurePermissions = {
|
||||||
"DATABASE caveman" = "ALL PRIVILEGES";
|
"DATABASE caveman" = "ALL PRIVILEGES";
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue
Block a user