Zum Inhalt springen

Serverbefehle: Unterschied zwischen den Versionen

Aus Home Wiki
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
1️⃣ Gesamten Speicherverbrauch der Ordner sehen
Diese Anleitung beschreibt, wie du den Speicherverbrauch deiner Docker-Ordner (am Beispiel Jellyfin) analysierst und Konflikte mit belegten Ports (z. B. Port 80) löst.


Wechsle zuerst in dein Jellyfin-Verzeichnis:
== 📂 Speicherverbrauch analysieren ==


=== 1️⃣ Gesamten Speicherverbrauch der Ordner sehen ===
Wechsle zuerst in dein Verzeichnis:
<pre class="dynamic-code">
cd /home/robin/docker/jellyfin
cd /home/robin/docker/jellyfin
Dann:
du -sh *
du -sh *
</pre>


 
* '''du''': Disk Usage
du Disk Usage
* '''-s''': nur Summen pro Ordner
 
* '''-h''': "human readable" (MB/GB)
-s nur Summen pro Ordner
 
-h → “human readable”, also in MB/GB


Beispiel-Ausgabe:
Beispiel-Ausgabe:
 
<pre class="static-code">
config      12G
config      12G
cache      18G
cache      18G
data        15G
data        15G
logs        1G
logs        1G
</pre>


 
=== 2️⃣ Mehr Details (sortiert nach Größe) ===
So siehst du direkt, welcher Ordner die größten Speicherfresser sind.
Um direkt die größten "Speicherfresser" oben zu sehen:
 
<pre class="dynamic-code">
2️⃣ Mehr Details (sortiert nach Größe)
 
Wenn du genau sehen willst, welche Unterordner am meisten Platz brauchen:
 
du -h --max-depth=1 | sort -hr
du -h --max-depth=1 | sort -hr
</pre>


* '''--max-depth=1''': zeigt nur die direkte Ebene der Unterordner.
* '''sort -hr''': sortiert numerisch und in lesbarem Format absteigend.


--max-depth=1 → nur die Unterordner direkt unter jellyfin/
=== 3️⃣ Optional: Tiefer in Unterordner eintauchen ===
Wenn du z. B. nur den Inhalt des Cache-Ordners prüfen willst:
<pre class="dynamic-code">
du -h --max-depth=1 ./cache | sort -hr
</pre>


sort -hr → sortiert nach Größe absteigend
---


Beispiel-Ausgabe:
== 🔌 Port-Konflikte lösen (z. B. Port 80) ==
 
18G    ./cache
15G    ./data
12G    ./config
1G    ./logs
 
 
Damit siehst du sofort, wo der meiste Platz verbraucht wird.


3️⃣ Optional: Noch tiefer in Unterordner
Wenn ein Container nicht startet, weil ein Port bereits belegt ist, folge diesen Schritten:
 
Wenn du z. B. wissen willst, welche Unterordner in cache am meisten Platz brauchen:
 
du -h --max-depth=1 ./cache | sort -hr
 
1️⃣ Prüfen, welcher Prozess Port 80 benutzt
 
Führe diesen Befehl aus:


=== 1️⃣ Prüfen, welcher Prozess den Port nutzt ===
Führe einen dieser Befehle aus:
<pre class="dynamic-code">
sudo lsof -i :80
sudo lsof -i :80
 
# ODER
 
oder
 
sudo netstat -tulpn | grep :80
sudo netstat -tulpn | grep :80
</pre>


Du erhältst eine Anzeige des Prozesses (z. B. nginx oder apache), der den Port blockiert.


Du bekommst etwas wie:
=== 2️⃣ Den störenden Prozess stoppen ===
 
Falls der Dienst nicht benötigt wird:
nginx  1234  root  6u  IPv4  ...  TCP *:http (LISTEN)
<pre class="dynamic-code">
 
 
Das zeigt dir, welcher Prozess gerade Port 80 belegt. Oft ist es:
 
ein anderer nginx-Server
 
Apache (httpd)
 
oder ein anderer Docker-Container
 
2️⃣ Den störenden Prozess stoppen
 
Wenn du ihn nicht brauchst:
 
sudo systemctl stop nginx
sudo systemctl stop nginx
 
# ODER (für Apache)
 
oder für Apache:
 
sudo systemctl stop apache2
sudo systemctl stop apache2
</pre>


 
Falls ein anderer Docker-Container schuld ist:
Wenn es ein anderer Docker-Container ist:
<pre class="dynamic-code">
 
docker ps
docker ps
docker stop <container_id>
docker stop <container_id>
</pre>


3️⃣ Alternativ: Docker auf einem anderen Port starten
=== 3️⃣ Alternativ: Port in Docker ändern ===
 
Wenn du beide Dienste parallel nutzen willst, ändere den Host-Port in deiner <nowiki>docker-compose.yml</nowiki>:
Wenn du den anderen Service nicht stoppen willst, kannst du in deiner docker-compose.yml den Port ändern, z. B.:
<pre class="static-code">
 
ports:
ports:
   - "8080:80"
   - "8080:80"
</pre>
''Der Container ist dann extern über Port 8080 erreichbar.''


=== 4️⃣ Container neu starten ===
Sobald der Port frei oder geändert ist, starte die Umgebung neu:
<pre class="dynamic-code">
docker compose up -d
</pre>


Dann ist der Container unter http://<host>:8080 erreichbar.
== 💡 Hinweis ==
 
Die Befehle für den Speicherverbrauch lassen sich auf jedes beliebige Verzeichnis anwenden, nicht nur auf Jellyfin. Es ist ratsam, regelmäßig die '''logs''' und den '''cache''' zu prüfen, da diese oft unbemerkt anwachsen.
4️⃣ Container neu starten
 
Nachdem der Port frei ist oder du ihn geändert hast:
 
docker compose up -d

Version vom 17. Februar 2026, 22:02 Uhr

Diese Anleitung beschreibt, wie du den Speicherverbrauch deiner Docker-Ordner (am Beispiel Jellyfin) analysierst und Konflikte mit belegten Ports (z. B. Port 80) löst.

📂 Speicherverbrauch analysieren

1️⃣ Gesamten Speicherverbrauch der Ordner sehen

Wechsle zuerst in dein Verzeichnis:

cd /home/robin/docker/jellyfin
du -sh *
  • du: Disk Usage
  • -s: nur Summen pro Ordner
  • -h: "human readable" (MB/GB)

Beispiel-Ausgabe:

config      12G
cache       18G
data        15G
logs        1G

2️⃣ Mehr Details (sortiert nach Größe)

Um direkt die größten "Speicherfresser" oben zu sehen:

du -h --max-depth=1 | sort -hr
  • --max-depth=1: zeigt nur die direkte Ebene der Unterordner.
  • sort -hr: sortiert numerisch und in lesbarem Format absteigend.

3️⃣ Optional: Tiefer in Unterordner eintauchen

Wenn du z. B. nur den Inhalt des Cache-Ordners prüfen willst:

du -h --max-depth=1 ./cache | sort -hr

---

🔌 Port-Konflikte lösen (z. B. Port 80)

Wenn ein Container nicht startet, weil ein Port bereits belegt ist, folge diesen Schritten:

1️⃣ Prüfen, welcher Prozess den Port nutzt

Führe einen dieser Befehle aus:

sudo lsof -i :80
# ODER
sudo netstat -tulpn | grep :80

Du erhältst eine Anzeige des Prozesses (z. B. nginx oder apache), der den Port blockiert.

2️⃣ Den störenden Prozess stoppen

Falls der Dienst nicht benötigt wird:

sudo systemctl stop nginx
# ODER (für Apache)
sudo systemctl stop apache2

Falls ein anderer Docker-Container schuld ist:

docker ps
docker stop <container_id>

3️⃣ Alternativ: Port in Docker ändern

Wenn du beide Dienste parallel nutzen willst, ändere den Host-Port in deiner docker-compose.yml:

ports:
  - "8080:80"

Der Container ist dann extern über Port 8080 erreichbar.

4️⃣ Container neu starten

Sobald der Port frei oder geändert ist, starte die Umgebung neu:

docker compose up -d

💡 Hinweis

Die Befehle für den Speicherverbrauch lassen sich auf jedes beliebige Verzeichnis anwenden, nicht nur auf Jellyfin. Es ist ratsam, regelmäßig die logs und den cache zu prüfen, da diese oft unbemerkt anwachsen.