feat(server): memos

This commit is contained in:
2025-07-22 12:55:23 +08:00
parent 1c7e5b9f05
commit 3263d72b59
4 changed files with 92 additions and 79 deletions

View File

@@ -7,26 +7,22 @@
} }
]; ];
services.postgresql.ensureDatabases = [ "coder" ]; services.postgresql.ensureDatabases = [ "coder" ];
virtualisation.oci-containers = { virtualisation.oci-containers.containers.coder = {
containers = { image = "ghcr.io/coder/coder:latest";
coder = { environment = {
image = "ghcr.io/coder/coder:latest"; CODER_ACCESS_URL = "https://coder.imxyy.top";
environment = { CODER_HTTP_ADDRESS = "0.0.0.0:8086";
CODER_ACCESS_URL = "https://coder.imxyy.top"; CODER_PG_CONNECTION_URL = "postgresql://coder:coderdatabase@127.0.0.1/coder?sslmode=disable";
CODER_HTTP_ADDRESS = "0.0.0.0:8086";
CODER_PG_CONNECTION_URL = "postgresql://coder:coderdatabase@127.0.0.1/coder?sslmode=disable";
};
extraOptions = [
"--network=host"
"--group-add=${toString config.users.groups.podman.gid}"
];
volumes = [
"/var/lib/coder:/home/coder/.config"
"/var/run/docker.sock:/var/run/docker.sock"
];
ports = [ "8086:8086" ];
};
}; };
extraOptions = [
"--network=host"
"--group-add=${toString config.users.groups.podman.gid}"
];
volumes = [
"/var/lib/coder:/home/coder/.config"
"/var/run/docker.sock:/var/run/docker.sock"
];
ports = [ "8086:8086" ];
}; };
services.caddy.virtualHosts."coder.imxyy.top" = { services.caddy.virtualHosts."coder.imxyy.top" = {
extraConfig = '' extraConfig = ''

View File

@@ -1,14 +1,10 @@
{ {
virtualisation.oci-containers = { virtualisation.oci-containers.containers.sun-panel = {
containers = { image = "hslr/sun-panel:latest";
sun-panel = { volumes = [
image = "hslr/sun-panel:latest"; "/var/lib/sun-panel:/app/conf"
volumes = [ ];
"/var/lib/sun-panel:/app/conf" ports = [ "8085:3002" ];
];
ports = [ "8085:3002" ];
};
};
}; };
services.caddy.virtualHosts."home.imxyy.top" = { services.caddy.virtualHosts."home.imxyy.top" = {
extraConfig = '' extraConfig = ''

View File

@@ -409,6 +409,21 @@
customDomains = [ "immich.imxyy.top" ]; customDomains = [ "immich.imxyy.top" ];
} }
{
name = "memo-http";
type = "http";
localIP = "127.0.0.1";
localPort = 80;
customDomains = [ "memo.imxyy.top" ];
}
{
name = "memo-https";
type = "https";
localIP = "127.0.0.1";
localPort = 443;
customDomains = [ "memo.imxyy.top" ];
}
{ {
name = "minecraft"; name = "minecraft";
type = "tcp"; type = "tcp";
@@ -479,27 +494,23 @@
]; ];
}; };
virtualisation.oci-containers = { virtualisation.oci-containers.containers.obligator = {
containers = { image = "anderspitman/obligator:latest";
obligator = { volumes = [
image = "anderspitman/obligator:latest"; "/var/lib/obligator:/data"
volumes = [ "/var/lib/obligator:/api"
"/var/lib/obligator:/data" ];
"/var/lib/obligator:/api" ports = [ "8081:1616" ];
]; cmd = [
ports = [ "8081:1616" ]; "-storage-dir"
cmd = [ "/data"
"-storage-dir" "-api-socket-dir"
"/data" "/api"
"-api-socket-dir" "-root-uri"
"/api" "https://oidc.imxyy.top"
"-root-uri" "-port"
"https://oidc.imxyy.top" "1616"
"-port" ];
"1616"
];
};
};
}; };
services.caddy.virtualHosts."headscale.imxyy.top" = { services.caddy.virtualHosts."headscale.imxyy.top" = {
extraConfig = '' extraConfig = ''

View File

@@ -14,36 +14,41 @@
format = "dotenv"; format = "dotenv";
}; };
}; };
virtualisation.oci-containers = { virtualisation.oci-containers.containers = {
containers = { flatnotes = {
flatnotes = { image = "dullage/flatnotes:latest";
image = "dullage/flatnotes:latest"; volumes = [
volumes = [ "/mnt/nas/flatnotes/data:/data"
"/mnt/nas/flatnotes/data:/data" ];
]; environmentFiles = [
environmentFiles = [ "${config.sops.secrets.flatnote-env.path}"
"${config.sops.secrets.flatnote-env.path}" ];
]; ports = [ "8093:8080" ];
ports = [ "8093:8080" ]; };
}; siyuan = {
siyuan = { image = "apkdv/siyuan-unlock:v3.1.30";
image = "apkdv/siyuan-unlock:v3.1.30"; volumes = [
volumes = [ "/mnt/nas/siyuan/workspace:/workspace"
"/mnt/nas/siyuan/workspace:/workspace" "/mnt/nas/siyuan:/home/siyuan"
"/mnt/nas/siyuan:/home/siyuan" ];
]; cmd = [
cmd = [ "--workspace=/workspace"
"--workspace=/workspace" ];
]; environment = {
environment = { PUID = "0";
PUID = "0"; PGID = "0";
PGID = "0";
};
environmentFiles = [
"${config.sops.secrets.siyuan-env.path}"
];
ports = [ "8095:6806" ];
}; };
environmentFiles = [
"${config.sops.secrets.siyuan-env.path}"
];
ports = [ "8095:6806" ];
};
memos = {
image = "neosmemo/memos:stable";
volumes = [
"/mnt/nas/memos:/var/opt/memos"
];
ports = [ "8097:5230" ];
}; };
}; };
services.caddy.virtualHosts = { services.caddy.virtualHosts = {
@@ -57,5 +62,10 @@
reverse_proxy :8095 reverse_proxy :8095
''; '';
}; };
"memo.imxyy.top" = {
extraConfig = ''
reverse_proxy :8097
'';
};
}; };
} }