chore(ops): give the unprivileged instance its own proxy unit

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
zacharyandClaude Opus 5 committed 2026-10-08 00:24:57 +02:00
1 parent 79eb42b578
commit 9c3e33510d
4 files changed
+77 -42

No files matched your search

+48
View File
@@ -0,0 +1,48 @@
# Proxy inverse d'une instance Homarr lancée sous un utilisateur ordinaire.
#
# Configuration COMPLÈTE et autonome, destinée à `nginx -c`. Elle ne passe pas
# par /etc/nginx/nginx.conf : ce fichier-là est réécrit par le `run.sh` de
# l'instance de production à chaque démarrage, et n'inclut pas sites-enabled.
# Tout site déposé là disparaîtrait au premier redémarrage de la prod.
#
# Le proxy n'est pas un confort : le client se connecte à
# ws://<hôte>:<port>/websockets, sur la même origine que la page, alors que le
# serveur WebSocket écoute sur 3001. Sans ces deux emplacements, l'application
# se charge et perd ses mises à jour en direct, sans message d'erreur.
user www-data;
worker_processes auto;
pid /run/nginx-homarr-dev.pid;
events {
worker_connections 1024;
}
http {
access_log /var/log/nginx/homarr-dev-access.log;
error_log /var/log/nginx/homarr-dev-error.log;
server {
listen 80;
listen [::]:80;
server_name _;
location /websockets {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
}
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
client_max_body_size 256M;
}
}
}