feat: setup projectsend docker containers
This commit is contained in:
parent
77ac5e4fc3
commit
e20e9ebfae
3 changed files with 79 additions and 0 deletions
|
@ -10,6 +10,7 @@
|
||||||
./mpd
|
./mpd
|
||||||
./murmur
|
./murmur
|
||||||
./opengist
|
./opengist
|
||||||
|
./projectsend
|
||||||
./traefik
|
./traefik
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
68
nixos/viridian/services/projectsend/default.nix
Normal file
68
nixos/viridian/services/projectsend/default.nix
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
{config, ...}: {
|
||||||
|
# Environment variables for ProjectSend
|
||||||
|
age.secrets.projectsend = {
|
||||||
|
rekeyFile = ./environment.age;
|
||||||
|
};
|
||||||
|
|
||||||
|
# Setup for ProjectSend, a file sharing application
|
||||||
|
virtualisation.oci-containers.containers = {
|
||||||
|
projectsend = {
|
||||||
|
image = "linuxserver/projectsend:version-r1720";
|
||||||
|
ports = [
|
||||||
|
"9684:80"
|
||||||
|
];
|
||||||
|
volumes = [
|
||||||
|
"/var/lib/projectsend/config:/config"
|
||||||
|
"/var/lib/projectsend/data:/data"
|
||||||
|
];
|
||||||
|
environment = {
|
||||||
|
PUID = "1000";
|
||||||
|
PGID = "100";
|
||||||
|
};
|
||||||
|
extraOptions = [
|
||||||
|
"--network=projectsend"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
# MariaDB container for ProjectSend
|
||||||
|
projectsend-mariadb = {
|
||||||
|
image = "mariadb:lts-noble";
|
||||||
|
volumes = [
|
||||||
|
"/var/lib/projectsend/mysql:/var/lib/mysql"
|
||||||
|
];
|
||||||
|
environmentFiles = [
|
||||||
|
config.age.secrets.projectsend.path
|
||||||
|
];
|
||||||
|
extraOptions = [
|
||||||
|
"--network=projectsend"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Network for ProjectSend containers
|
||||||
|
services.traefik.dynamicConfigOptions.http = {
|
||||||
|
routers.projectsend = {
|
||||||
|
rule = "Host(`drop.ps7e.xyz`)";
|
||||||
|
entryPoints = [
|
||||||
|
"websecure"
|
||||||
|
];
|
||||||
|
service = "projectsend";
|
||||||
|
};
|
||||||
|
services.projectsend = {
|
||||||
|
loadBalancer.servers = [
|
||||||
|
{url = "http://127.0.0.1:9684";}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# Persistence configuration for ProjectSend
|
||||||
|
environment.persistence."/persist" = {
|
||||||
|
directories = [
|
||||||
|
{
|
||||||
|
directory = "/var/lib/projectsend";
|
||||||
|
user = "sajenim";
|
||||||
|
group = "users";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
10
nixos/viridian/services/projectsend/environment.age
Normal file
10
nixos/viridian/services/projectsend/environment.age
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
age-encryption.org/v1
|
||||||
|
-> piv-p256 hdSnGw ArF/5zoX1WGrrBvli8JN/BU/zhX+uuSvHUZOr8xWT1jE
|
||||||
|
AVLiFe7B8jpeqy3twUGoOcuA4XKGv4wT9gKMNIipmuc
|
||||||
|
-> }S39,Y-grease Y`7mW
|
||||||
|
bOcAO2gpCv5yHpJyHI2omMPzeRjiTTagCwQfMZST5+D6A1mPk86C99e2bDNv
|
||||||
|
--- KbkF7enRjL7hkgek9CO5UcIOVZ087ji1oDMGViaThPI
|
||||||
|
<09>'4[n7ôY0YZõ͉¦þ®ã±k‘±žzÕ´p]v{_sÛ;
|
||||||
|
±ôÚf¾A
|
||||||
|
!.ò¦Û±±¢ý줮EWw²lÊÔS¶
ÚyˆÁ¶s8lmOlžÝ J˜bjÜå–Ý®ù®n:¡q.8®d<EFBFBD>d_à³3
|
||||||
|
™æp‰ÂÞN´´ÅÁY)×<>È›ÿ÷Y³YÂ
|
Loading…
Add table
Add a link
Reference in a new issue