mob next [ci-skip] [ci skip] [skip ci]

lastFile:modules/nixos/think-backend-gtcm.nix
This commit is contained in:
2026-01-09 14:22:29 +07:00
parent dd3e3020d9
commit 1315d18df2
2 changed files with 32 additions and 5 deletions

View File

@@ -7,6 +7,30 @@
let let
cfg = config.services.think-backend-greaterchiangmai; cfg = config.services.think-backend-greaterchiangmai;
think-backend-gtcm = pkgs.think-backend-gtcm.override { dataDir = cfg.dataDir; }; think-backend-gtcm = pkgs.think-backend-gtcm.override { dataDir = cfg.dataDir; };
file-uploader = pkgs.file-uploader.override { dataDir = cfg.dataDir; };
nginxNodeProxyConfig = ''
proxy_pass http://127.0.0.1:3000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header x-webobjects-server-protocol HTTP/1.0;
proxy_set_header x-webobjects-remote-host 127.0.0.1;
proxy_set_header x-webobjects-server-port $server_port;
proxy_set_header x-webobjects-server-name $server_name;
proxy_set_header x-webobjects-server-url $scheme://$host;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 64k;
proxy_buffers 8 64k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
client_max_body_size 50m;
client_body_buffer_size 128k;
'';
defaultUser = "gtcm"; defaultUser = "gtcm";
defaultGroup = "gtcm"; defaultGroup = "gtcm";
@@ -245,7 +269,7 @@ in
"d ${cfg.dataDir}/storage/logs 0700 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/storage/logs 0700 ${cfg.user} ${cfg.group} - -"
"d ${cfg.dataDir}/storage/uploads 0700 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/storage/uploads 0700 ${cfg.user} ${cfg.group} - -"
"d ${cfg.dataDir}/upload-large-file/uploads 0700 ${cfg.user} ${cfg.group} - -" "d ${cfg.dataDir}/file-uploader/uploads 0700 ${cfg.user} ${cfg.group} - -"
]; ];
networking.firewall.allowedTCPPorts = [ networking.firewall.allowedTCPPorts = [
@@ -274,9 +298,12 @@ in
extraConfig = "expires 365d;"; extraConfig = "expires 365d;";
}; };
"/initiate-multiplart-upload" = { "/initiate-multiplart-upload".extraConfig = nginxNodeProxyConfig;
"/get-presigned-url".extraConfig = nginxNodeProxyConfig;
}; "/complete-multipart-upload".extraConfig = nginxNodeProxyConfig;
"/generate-presigned-url".extraConfig = nginxNodeProxyConfig;
"/enable-bucket-cors".extraConfig = nginxNodeProxyConfig;
"/upload".extraConfig = nginxNodeProxyConfig;
}; };
}; };
}; };

View File

@@ -34,7 +34,7 @@ buildNpmPackage {
mkdir -p $out mkdir -p $out
cp -r * $out cp -r * $out
ln -s ${dataDir}/.env $out/.env ln -s ${dataDir}/.env $out/.env
ln -s ${dataDir}/uploads $out/src/be/uploads ln -s ${dataDir}/file-uploader/uploads $out/src/be/uploads
runHook postInstall runHook postInstall
''; '';
} }