add mediaproxy maybe

This commit is contained in:
Charlotte 🦝 Delenk 2022-11-05 21:26:45 +01:00
parent c75ba5f127
commit 3ed1e52ce5
Signed by: darkkirb
GPG key ID: AB2BD8DAF2E37122
2 changed files with 49 additions and 0 deletions

View file

@ -161,6 +161,9 @@
":web_push_encryption".":vapid_details".subject = "lotte@chir.rs"; ":web_push_encryption".":vapid_details".subject = "lotte@chir.rs";
}); });
in { in {
imports = [
./mediaproxy.nix
];
services.pleroma = { services.pleroma = {
enable = true; enable = true;
package = nix-packages.packages.${pkgs.system}.akkoma; package = nix-packages.packages.${pkgs.system}.akkoma;
@ -185,6 +188,11 @@ in {
handle /media_attachments/* { handle /media_attachments/* {
redir https://mastodon-assets.chir.rs{uri} permanent redir https://mastodon-assets.chir.rs{uri} permanent
} }
handle /proxy/* {
reverse_proxy {
to http://127.0.0.1:24154
}
}
handle { handle {
reverse_proxy { reverse_proxy {
to http://127.0.0.1:4000 to http://127.0.0.1:4000

View file

@ -0,0 +1,41 @@
{
services.nginx = {
enable = true;
virtualHosts."mail.chir.rs".listen = [
{
addr = "127.0.0.1";
port = 24153;
}
];
virtualHosts."mediaproxy.int.chir.rs" = {
listen = [
{
addr = "127.0.0.1";
port = 24154;
}
];
extraConfig = ''
proxy_cache_path /var/cache/mediacache levels=1:2 keys_zone=akkoma_media_cache:10m inactive=1y use_temp_path=off;
location ~ ^/(media|proxy) {
proxy_cache akkoma_media_cache;
slice 1m;
proxy_cache_key $host$uri$is_args$args$slice_range;
proxy_set_header Range $slice_range;
proxy_http_version 1.1;
proxy_cache_valid 206 301 302 304 1h;
proxy_cache_valid 200 1y;
proxy_cache_use_stale error timeout invalid_header updating;
proxy_ignore_client_abort on;
proxy_buffering on;
chunked_transfer_encoding on;
proxy_ignore_headers Cache-Control Expires;
proxy_hide_header Cache-Control Expires;
proxy_pass http://127.0.0.1:4000;
}
'';
};
};
systemd.tmpfiles.rules = [
"d '/var/cache/mediacache' 0750 nginx nginx - -"
];
}