• Docker
  • [Discussion] Installer l'image Docker ruTorrent de Mondedie.fr

Hello tout le monde, je tourne depuis 4 ans en bonobo sur jessie, autant vous dire une eternite !
bref je vais remettre les mains dans le cambouis ( avec diffultes donc je risuqe de revenir rapidement à la charge...) et je me demandais comment faire pour avoir deux utilisateurs qui aient toujours le meme port de connexion sur rutorrent ?
des suggestions ?

Autre point, en bon fainéant je vais surement utiliser Portainer pour gérer mes conteneurs, y'en a d'autre qui ont pratiqué ?

Rutorrent n'est pas conçu pour du multi-user, tu peux avoir à la limite 2 logins pour accéder au même rutorrent mais c'est tout
Il faut faire tourner un 2nd rutorrent si tu tiens à ce fonctionnement.
Tu devrais peut-être nous détailler ton besoin et on te proposera peut-être une solution de type
Ombi > Radarr/Sonarr > Rutorrent > Plex multi-users

Portainer est connu et simple :
docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
https://documentation.portainer.io/v2.0/deploy/ceinstalldocker/

Merci pour ta réponse Spider en gros sur ma Jessie avec le vieux script mondédié j'avais 2 utilisateurs aka mon frérot et moi même et un ftp pour tout rapatrier en local. Les besoins initiaux sont tout ce qu'il y a de plus basique (tout comme mon niveau de Linux).
Ombi /radarr/Sonarr , dis toi que j'en suis resté a 2016 j'ai encore rien automatisé et je n'y ai pas encore tout compris.
Les prétentieux diront que je préfère la qualité que la quantité mais en vrai je découvre donc je prends tous les bons conseils 😉 . Pas de plex prevu, j'ai un nas à la maison

je ne veux juste pas jouer l'egoiste avec mon serveur, il partage son compte de Streaming au N rouge avec moi

Donc en gros, si j'ai bien tout compris, l'image du sieur magicalex (merci à lui !) va m'installer un mono instance de torrent et c'est tout.Le ftp, fail2ban et Cie je me paluche ça comme un grand, j'ai bon ?
je vais tout gerer via portainer comme un grosse feignasse mais la encore le truc à ses limites à savoir qu'il ne sait pas compiler une image depuis un git mais c'est pas (si) grave.
Là où ça pèche un peut c'est que je pense devoir déployer deux fois l'image avec des paramètres différents pour différencier les utilisateurs vu que le conteneur à des variables en dur et que je ne vois pas trop comment déclarer des utilisateurs différent avec leurs propre variables data et config, jai bon les amis ?

Bon bas j'en ai qu'un sur deux qui fonctionne, pas moyen de comprendre pourquoi ...

Victoire \o/
prerequis
connaitre UID et GID de chaque utilisateur via la commande ID

docker run --name "conteneur 1" -dt \
  -e UID=1000 \
  -e GID=1000 \
  -e HTTP_AUTH=true \
  -p 8080:8080 \
  -p 45000:45000 \
  -v "dossier 1":/config \
  -v "dossier 1":/data \
mondedie/rutorrent:latest

declarer l'utilisateur http

docker exec -it "conteneur 1" gen-http-passwd
docker run --name "conteneur 2" -dt \
  -e UID=1001 \
  -e GID=1002\
  -e HTTP_AUTH=true \
  -p 8081:8080 \
  -p 45010:45000 \
  -v "dossier 2":/config \
  -v "dossier 2":/data \
mondedie/rutorrent:latest

declarer l'utilisateur http

docker exec -it "conteneur 2" gen-http-passwd

Donc conteneur 1 c'est IP du serveur:8080 et conteneur 2 = ip du serveur:8081
je vous tiens au courant de ce que ça donne à l'usure

Oui, avec Docker est plus simple ! Bonne utilisation à vous deux 🙂

Petite correction du code et merci Aerya c'est ton script avancé et le discord qui m'on fait comprendre mes conneries de bind
prerequis
connaitre UID et GID de chaque utilisateur via la commande ID

docker run --name "conteneur 1" -dt \
  -e UID=1000 \
  -e GID=1000 \
  -e HTTP_AUTH=true \
  -p 8080:8080 \
  -p 45000:45000 \
  -v "dossier 1":/config \
  -v "dossier 1":/data \
mondedie/rutorrent:latest

declarer l'utilisateur http

docker exec -it "user 1" gen-http-passwd
docker run --name conteneur 2 -dt \
  -e UID=1001 \
  -e GID=1002\
  -e HTTP_AUTH=true \
  -p 8081:8080 \
  -p 45010:45000 \
  -v "dossier 2":/config \
  -v "dossier 2":/data \
mondedie/rutorrent:latest

declarer l'utilisateur http

docker exec -it "user 2" gen-http-passwd

User1 est UID et GID 1000 et aussi owner de ses dossiers install et config
pareil pour User2 donc normale que UID et GID soient différents

Donc conteneur 1 c'est IP du serveur:8080 et conteneur 2 = ip du serveur:8081
je vous tiens au courant de ce que ça donne à l'usure

salut a tous, rien à déplorer au bout de 3 jours.
Niveau sécu du serveur je me suis contenté du basique à savoir changer le port ssh et configurer un fail2ban dessus..

Pour le choix d'un "Firewall je me tate, iptables ou Ufw ou autre et surtout existe t'il un Gui qui me permette que mes conneries me sautent au yeux avant de pousser les règles ?
merci d'avance

@Magicalex Salut !
Je remonte cette conversation : https://mondedie.fr/d/10963-maintien-dune-image-docker-rutorrent-pour-la-communaute-mondedie/59

Tu as supprimé cette variable d'environnement : WEBROOT
Le problème c'est que sans cette variable, il est nécessaire de configurer un sous domaine par utilisateur ( trés contraignant en multi-user, surtout qu'un simple /user_rutorrent/ /user2_rutorrent/ aurait simplement fait l'affaire )
Je suis en train de tester le script de Merrick : https://github.com/Merrick28/seedbox-docker/ qui a migré de l'image xataz à l'image MonDedie, malheureusement suite au changement, l'accès à rutorrent n'est plus fonctionnel du à l'absence de cette variable.
Ma question est donc : Serait t-il possible de réintégrer ce type de variable dans l'image MonDedie, ou as tu une proposition pour pouvoir continuer à utiliser /URL/user_rutorrent/ ?

merci !

PS : Le captcha est buggé lors de saisie de texte long, il se réinitialise et se bloque au bout d'un moment..

    Whisper40

    server {
      listen 8443 ssl http2;
      server_name rutorrent.ndd.fr;
    
      ssl_certificate /etc/nginx/ssl/live/ndd.fr/fullchain.pem;
      ssl_certificate_key /etc/nginx/ssl/live/ndd.fr/privkey.pem;
    
      include /etc/nginx/conf.d/ssl.conf;
      include /etc/nginx/conf.d/headers.conf;
    
      ## authentication
      auth_basic "rutorrent.ndd.fr";
      auth_basic_user_file "/etc/nginx/passwds/rutorrent_passwd";
    
      location /user_1 {
        proxy_pass http://rutorrentuser1:8080;
        include /etc/nginx/conf.d/proxy.conf;
      }
    
      location /user_2 {
        proxy_pass http://rutorrentuser2:8080;
        include /etc/nginx/conf.d/proxy.conf;
      }
    
      access_log /var/log/nginx/rutorrent-access.log combined;
      error_log /var/log/nginx/rutorrent-error.log error;
    }

    Voilà pas besoin de webroot

    Magicalex Traefik est un reverse proxy docker, qui permet de gérer automatiquement les certificats, et de créer des routes de façon dynamiques dès qu'un container est créé. C'est un "gros" nginx mais automatisé en fonction des lables des dockers

    14 jours plus tard

    Merci pour cette image docker, qui facilite bien la vie et fait gagner un temps fou.

    Par contre, autant ça fonctionne bien pour un nombre limité de torrents, autant quand on commence à en avoir un certain nombre, ça commence à partir en sucette. Après quelques milliers, j'ai tout d'abord eu droit à des « Bad response from server: (500 [error,list]) », qui furent résolus en augmentant la quantité de mémoire utilisable par ruTorrent (variable memory_limit dans php.ini).

    Tranquille quelques temps, avant d'atteindre un nouvelle pallier. Là, ce fut des « Bad response from server: (504 [error,getplugins]) Gateway Time-out ». De ce que j'ai compris, ça survient quand on a trop chargé la mule. Néanmoins, d'augmenter le temps d'exécution, semble là encore avoir résolu le souci (max_execution_time dans php.ini, request_terminate_timeout dans www.conf et éventuellement fastcgi_read_timeout 300; dans la partie location ~ .php$ de nginx.conf... n'étant clairement pas expert, ça reste à vérifier).

    Tout ça pour dire que ça serait sans doute bien d'augmenter un peu les différentes valeurs par défaut. Parce que le coup des 128 Mo de RAM utilisables par ruTorrent (qui devient rapidement un gouffre en terme de ressources utilisées) alors que sur les dédiés, on a bien souvent 32, voir 64 Go de RAM (si ce n'est plus), je trouve ça un peu limite.

      24 jours plus tard

      J'ai un soucis avec l'image docker mondedie, sur la recherche de torrent sur le tracker privé yggtorrent, j'ai des fetch error. Comment je peux vérifier que l'url utilisé est la bonne, comme ils changent régulièrement de nom de domaine je me dis que ça doit être le soucis. Mon image est à jour par rapport à la dernière version publiée sur le hub docker.

      12 jours plus tard