COLLABORA WORKS!!!

This commit is contained in:
Danilo Reyes 2023-12-20 21:38:49 -06:00
parent 67a5e79952
commit d0afa9fa27
3 changed files with 99 additions and 127 deletions

View File

@ -9,39 +9,38 @@
storageDriver = "btrfs"; storageDriver = "btrfs";
}; };
oci-containers = { # oci-containers = {
backend = "docker";
containers.collabora = {
image = "collabora/code";
imageFile = pkgs.dockerTools.pullImage {
imageName = "collabora/code";
imageDigest =
"sha256:aab41379baf5652832e9237fcc06a768096a5a7fccc66cf8bd4fdb06d2cbba7f";
sha256 = "sha256-M66lynhzaOEFnE15Sy1N6lBbGDxwNw6ap+IUJAvoCLs=";
};
ports = [ "9980:9980" ];
environment = {
domain = "cloud.servidos.lat";
dictionaries = "en_CA en_US es_MX es_ES fr_FR it pt_BR ru";
extra_params = "--o:ssl.enable=false --o:ssl.termination=true";
};
extraOptions = [ "--cap-add" "MKNOD" ];
};
};
# arion = {
# backend = "docker"; # backend = "docker";
# "collabora".settings.services."collabora".service = { # containers = {
# image = "collabora/code"; # flaresolverr = {
# ports = [ "9980:9980/tcp" ]; # image = "ghcr.io/flaresolverr/flaresolverr:latest";
# # imageFile = pkgs.dockerTools.pullImage {
# # imageName = "ghcr.io/flaresolverr/flaresolverr:latest";
# # };
# ports = [ "8191:8191" ];
# environment = { # environment = {
# server_name = "collabora.servidos.lat"; # TZ = "America/Mexico_City";
# aliasgroup1 = "https://cloud.servidos.lat:443"; # LOG_LEVEL = "\${LOG_LEVEL:-info}";
# dictionaries = "en_CA en_US es_MX es_ES fr_FR it pt_BR ru"; # LOG_HTML = "\${LOG_HTML:-false}";
# username = "jawz"; # CAPTCHA_SOLVER = "\${CAPTCHA_SOLVER:-none}";
# password = "password";
# extra_params = "--o:ssl.enable=false --o:ssl.termination=true";
# }; # };
# extraOptions = [ "--pull=newer" ]; # };
# # # collabora = {
# # # image = "collabora/code";
# # # imageFile = pkgs.dockerTools.pullImage {
# # # imageName = "collabora/code";
# # # imageDigest =
# # # "sha256:aab41379baf5652832e9237fcc06a768096a5a7fccc66cf8bd4fdb06d2cbba7f";
# # # sha256 = "sha256-M66lynhzaOEFnE15Sy1N6lBbGDxwNw6ap+IUJAvoCLs=";
# # # };
# # # ports = [ "9980:9980" ];
# # # environment = {
# # # domain = "cloud.servidos.lat";
# # # dictionaries = "en_CA en_US es_MX es_ES fr_FR it pt_BR ru";
# # # extra_params = "--o:ssl.enable=false --o:ssl.termination=true";
# # # };
# # # extraOptions = [ "--cap-add" "MKNOD" ];
# # # };
# }; # };
# }; # };
}; };

View File

@ -6,7 +6,6 @@
let let
localhost = "127.0.0.1"; localhost = "127.0.0.1";
workstation = "192.168.1.64"; workstation = "192.168.1.64";
collabora = "http://127.0.0.1:9980";
jellyfinPort = "8096"; jellyfinPort = "8096";
nextcloudPort = 80; nextcloudPort = 80;
flamePort = 5005; flamePort = 5005;
@ -75,6 +74,7 @@ in {
map $request_uri $h264Level { ~(h264-level=)(.+?)& $2; } map $request_uri $h264Level { ~(h264-level=)(.+?)& $2; }
map $request_uri $h264Profile { ~(h264-profile=)(.+?)& $2; } map $request_uri $h264Profile { ~(h264-profile=)(.+?)& $2; }
## upload configs ## upload configs
proxy_read_timeout 600; proxy_read_timeout 600;
proxy_connect_timeout 600; proxy_connect_timeout 600;
@ -141,33 +141,6 @@ in {
}; };
}; };
}; };
"collabora.servidos.lat" = let
collaboraLocation = {
proxyPass = collabora;
extraConfig = ''
proxy_set_header Host $host;
'';
};
socketConfig = ''
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_read_timeout 36000s;
'';
in base {
"^~ /browser" = collaboraLocation;
"^~ /hosting/discovery" = collaboraLocation;
"^~ /hosting/capabilities" = collaboraLocation;
"~ ^/(c|l)ool" = collaboraLocation;
"~ ^/cool/(.*)/ws$" = {
proxyPass = collabora;
extraConfig = socketConfig;
};
"^~ /cool/adminws" = {
proxyPass = collabora;
extraConfig = socketConfig;
};
};
"flix.servidos.lat" = { "flix.servidos.lat" = {
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;

View File

@ -198,26 +198,26 @@ in {
}; };
systemd = { systemd = {
services = { services = {
# docker-compose = { docker-compose = {
# enable = true; enable = true;
# restartIfChanged = true; restartIfChanged = true;
# description = "Start docker-compose servers"; description = "Start docker-compose servers";
# after = [ "docker.service" "docker.socket" ]; after = [ "docker.service" "docker.socket" ];
# requires = [ "docker.service" "docker.socket" ]; requires = [ "docker.service" "docker.socket" ];
# wantedBy = [ "default.target" ]; wantedBy = [ "default.target" ];
# environment = { environment = {
# FILE = "/home/jawz/Development/Docker/docker-compose.yml"; FILE = "/home/jawz/Development/Docker/docker-compose.yml";
# }; };
# path = [ pkgs.docker-compose ]; path = [ pkgs.docker-compose ];
# serviceConfig = { serviceConfig = {
# Restart = "on-failure"; Restart = "on-failure";
# RestartSec = 30; RestartSec = 30;
# ExecStart = ExecStart =
# "${pkgs.docker-compose}/bin/docker-compose -f \${FILE} up --remove-orphans"; "${pkgs.docker-compose}/bin/docker-compose -f \${FILE} up --remove-orphans";
# ExecStop = ExecStop =
# "${pkgs.docker-compose}/bin/docker-compose -f \${FILE} down"; "${pkgs.docker-compose}/bin/docker-compose -f \${FILE} down";
# }; };
# }; };
nextcloud-cronjob = let nextcloud-cronjob = let
jawzNextcloudCronjob = pkgs.writeScriptBin "nextcloud-cronjob" jawzNextcloudCronjob = pkgs.writeScriptBin "nextcloud-cronjob"
(builtins.readFile ../scripts/nextcloud-cronjob.sh); (builtins.readFile ../scripts/nextcloud-cronjob.sh);