Add esphome host

This commit is contained in:
yuri 2023-11-04 22:20:49 +01:00
parent 5803c6ddc6
commit 26a1fe0e84
5 changed files with 82 additions and 0 deletions

View file

@ -0,0 +1,8 @@
{ ... }:
{
networking = {
hostName = "esphome";
};
system.stateVersion = "23.05";
}

View file

@ -0,0 +1,8 @@
{ ... }:
{
imports = [
./configuration.nix
./esphome.nix
./nginx.nix
];
}

View file

@ -0,0 +1,7 @@
{ ... }:
{
services.esphome = {
enable = true;
openFirewall = true;
};
}

View file

@ -0,0 +1,45 @@
{ config, ... }:
{
services.nginx = {
enable = true;
virtualHosts = {
"acme-esphome.ccchh.net" = {
enableACME = true;
serverName = "esphome.ccchh.net";
listen = [
{
addr = "0.0.0.0";
port = 31820;
}
];
};
"esphome.ccchh.net" = {
forceSSL = true;
useACMEHost = "esphome.ccchh.net";
listen = [
{
addr = "0.0.0.0";
port = 80;
}
{
addr = "0.0.0.0";
port = 443;
ssl = true;
}
];
locations."/" = {
proxyPass = "http://${config.services.esphome.address}:${builtins.toString config.services.esphome.port}";
proxyWebsockets = true;
};
};
};
};
networking.firewall.allowedTCPPorts = [ 80 443 31820 ];
}

View file

@ -95,6 +95,20 @@
];
};
esphome = {
deployment = {
targetHost = "esphome.z9.ccchh.net";
targetPort = 22;
targetUser = "colmena-deploy";
tags = [ "thinkcccluster" ];
};
imports = [
./config/common
./config/proxmox-vm
./config/hosts/esphome
];
};
public-reverse-proxy = {
deployment = {
targetHost = "public-reverse-proxy.z9.ccchh.net";