Zum Inhalt springen

Nextcloud/AIO/Installation: Unterschied zwischen den Versionen

Aus Foxwiki
DanielZorin (Diskussion | Beiträge)
 
(53 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:


== Beschreibung ==
== Beschreibung ==
=== Voraussetzungen ===
; Docker-Installation
* Funktionierende [[Docker/Installation#Standard_Debian_Installation|Docker-Installation]]
* Für die Arbeit mit Nextcloud AIO müssen die [[Docker/Installation#Installation_aus_dem_Debian-Repository|Docker-Pakete installiert]] sein


; Docker
=== Vorbereitung ===
Voraussetzung ist eine funktionierende [[Docker/Installation#Standard_Debian_Installation|Docker-Installation]].
[[Redis]] erfordert die Aktivierung der Kernel-Funktion vm.overcommit_memory


== Installation ==
; /etc/sysctl.d/99-override.conf
=== Nextcloud in Docker laden und starten ===
<syntaxhighlight lang="ini" highlight="" copy line>
<syntaxhighlight lang="bash" copy line>
vm.overcommit_memory=1
sudo docker run \
--sig-proxy=false \
--name nextcloud-aio-mastercontainer \
--restart always \
--publish 80:80 \
--publish 8080:8080 \
--publish 8443:8443 \
--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config
--volume /var/run/docker.sock:/var/run/docker.sock:ro \
ghcr.io/nextcloud-releases/all-in-one:latest
</syntaxhighlight>
</syntaxhighlight>
# ''sudo docker run'' —  Startet einen neuen Container aus einem Image
# ''--sig-proxy=false'' — Deaktiviert die Weiterleitung von Signalen (z. B. SIGINT/SIGTERM) vom Docker-Client an PID 1 im Container.
# ''--name nextcloud-aio-mastercontainer'' — Vergibt einen eindeutigen Containernamen zur späteren Referenz.
# ''--restart always'' — Aktiviert die Neustart-Richtlinie „always“: Container wird nach Absturz oder Daemon-Neustart automatisch neu gestartet außer nach manuellem ''docker stop''.
# ''--publish 80:80'' — Veröffentlicht Container-Port 80 TCP auf Host-Port 80 TCP
# ''--publish 8080:8080'' — siehe oben
# ''--publish 8443:8443'' — siehe oben
# ''--volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config'' — Bindet ein benanntes Volume ein. Persistiert Konfiguration unter ''/mnt/docker-aio-config'' im Container. Volume wird automatisch erstellt, falls nicht vorhanden.
# ''--volume /var/run/docker.sock:/var/run/docker.sock:ro'' — Bindet den Docker-Daemon-Socket des Hosts im Container ein (read-only). Erlaubt dem AIO-Mastercontainer, über die Docker-API Host-Container zu erstellen/stoppen/konfigurieren. :ro verhindert das Modifizieren/Ersetzen der Socket-Datei, begrenzt jedoch nicht die API-Berechtigungen.
# ''ghcr.io/nextcloud-releases/all-in-one:latest'' — Image-Referenz inkl. Tag. ''latest'' verwendet den jeweils neuesten Build


=== AIO interface ===
; Änderungen übernehmen
Next, you can open the AIO interface on https://localhost:8080 or https://the.servers.ip.address:8080.
<syntaxhighlight lang="bash" highlight="1" copy line>
sudo sysctl --system
</syntaxhighlight>


; Why you should use an ip-address
== Nextcloud Docker ==
: It’s important to always use an ip-address if you access this port, and not a domain. Otherwise, you risk that HSTS might block access to it later!
; Nextcloud in Docker laden und starten
<syntaxhighlight lang="bash" highlight="1" copy line>
sudo docker run \
  --sig-proxy=false \
  --name nextcloud-aio-mastercontainer \
  --restart always \
  --publish 80:80 \
  --publish 8080:8080 \
  --publish 8443:8443 \
  --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
  --volume /var/run/docker.sock:/var/run/docker.sock:ro \
  ghcr.io/nextcloud-releases/all-in-one:latest


3.&nbsp;You need to accept the self-signed certificate. Then you should see this:
</syntaxhighlight>
[[Datei:Aiosetup0.webp|600px|zentriert]]
 
* Alternatively, if ports 80 and 8443 should be opened in your firewall/router and a domain is configured to point to your server, you can reach the AIO interface with a valid certificate using https://your-domain.com:8443.
 
4.&nbsp;Click on “Open Nextcloud AIO login” and paste your password:
[[Datei:Aiosetup1.webp|600px|zentriert]]
 
5.&nbsp;Then, you should see the AIO interface:
[[Datei:Aiosetup2.webp|600px|zentriert]]
 
6.&nbsp;Next, type in your public domain that you you’ve got before doing this guide. The interface should help you figure out the exact steps. (Set up DDNS for your domain to point to your public IP, port-forward at least ports 443/tcp, 3478/udp, and 3478/tcp to your Linux machine.)
 
7.&nbsp;After you’ve set it up correctly, it should allow you to pass to the next step, where you can configure the wanted optional add-ons and the timezone, and click on “Start containers” to download and start them.
[[Datei:Aiosetup3.webp|600px|zentriert]]
 
8.&nbsp;At this point, you should see a spinner that will take a while depending on your internet speed. It should take around 10 minutes or more.
[[Datei:Aiosetup4.webp|600px|zentriert]]
 
9.&nbsp;When all containers are downloaded and started, you will see this screen showing the containers still starting, which will do the first installation for you:
[[Datei:Aiosetup5.webp|600px|zentriert]]
 
10.&nbsp;When everything is done, you should see this screen:
[[Datei:Aiosetup6.webp|600px|zentriert]]
 
11.&nbsp;Finally, you can now open your new Nextcloud instance and log in with the given admin credentials.
 
12.&nbsp;That’s it! Everything is set and ready for production.
 
== Management ==
 
Die Verwaltung von Nextcloud erfolgt über:
* AIO-Webpanel
* Verwaltung von Containern über das Webpanel oder die Docker-CLI
* Nextcloud OCC
 
=== AIO-Weboberfläche ===
Der Master-Container stellt eine Web-Administrationsoberfläche auf Port 8080 bereit.
https://<host_IP>:8080
Über die Oberfläche stehen Konfiguration, Start/Stop der Dienste, Updates und Backups zur Verfügung.
 
Für den Zugriff ist eine Anmeldung erforderlich.
Danach ist der Zugriff entweder direkt über Port 8080 oder über ''Settings'' > ''Overview'' > ''Open Nextcloud AIO Interface'' möglich.
 
=== Datenzugriff ===
 
Volumes anzeigen:
 
docker volume ls | grep nextcloud_aio
 
=== Container ===
 
==== list ====
Alle AIO-Container anzeigen:
docker ps -a --filter "name=nextcloud-aio"
 
==== start ====
Nur den Master-Container starten (weitere Container werden über die Oberfläche gestartet):
 
docker start nextcloud-aio-mastercontainer
 
==== stop ====
Falls ein Stopp über die Oberfläche nicht möglich ist, können die Container per CLI gestoppt werden.
 
docker ps --filter "name=nextcloud-aio"
 
docker stop <id>


==== logs ====
; Beschreibung
Zustand prüfen:
# Startet einen neuen Container aus einem Image
 
# Deaktiviert die Weiterleitung von Signalen (z. B. SIGINT/SIGTERM) vom Docker-Client an PID 1 im Container
docker logs -f nextcloud-aio-nextcloud
# Vergibt einen eindeutigen Containernamen zur späteren Referenz
 
# Aktiviert die Neustart-Richtlinie „always“: Container wird nach Absturz oder Daemon-Neustart automatisch neu gestartet außer nach manuellem ''docker stop''
=== OCC ===
# Container: 80/TCP --> Host: 80/TCP 
 
# Container: 8080/TCP --> Host: 8080/TCP 
Zur Verwaltung von Nextcloud kann auch occ verwendet werden:
# Container: 8443/TCP --> Host: 8443/TCP
 
# Bindet ein benanntes Volume ein. Persistiert Konfiguration unter ''/mnt/docker-aio-config'' im Container. Volume wird automatisch erstellt, falls nicht vorhanden.
 
# Bindet den Docker-Daemon-Socket des Hosts im Container ein (read-only). Erlaubt dem AIO-Mastercontainer, über die Docker-API Host-Container zu erstellen/stoppen/konfigurieren. :ro verhindert das Modifizieren/Ersetzen der Socket-Datei, begrenzt jedoch nicht die API-Berechtigungen.
docker exec -u www-data -it nextcloud-aio-nextcloud php occ <Befehl>
# Image-Referenz inkl. Tag. ''latest'' verwendet den jeweils neuesten Build
 
Siehe Hauptartikel [[Nextcloud/occ|occ]]


== Anhang ==
== Anhang ==
Zeile 125: Zeile 53:
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
</div>
----
* [[Nextcloud/AIO/Backend]]
----
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
Zeile 140: Zeile 70:
==== Weblinks ====
==== Weblinks ====


 
[[Kategorie:Nextcloud/AIO]]
[[Kategorie:Nextcloud]]
[[Kategorie:Nextcloud/Installation]]
[[Kategorie:Docker]]
[[Kategorie:Docker]]


</noinclude>
</noinclude>

Aktuelle Version vom 1. Januar 2026, 11:36 Uhr

Nextcloud/Installation/AIO - Nextcloud All In One Installation

Beschreibung

Voraussetzungen

Docker-Installation

Vorbereitung

Redis erfordert die Aktivierung der Kernel-Funktion vm.overcommit_memory

/etc/sysctl.d/99-override.conf
vm.overcommit_memory=1
Änderungen übernehmen
sudo sysctl --system

Nextcloud Docker

Nextcloud in Docker laden und starten
sudo docker run \
  --sig-proxy=false \
  --name nextcloud-aio-mastercontainer \
  --restart always \
  --publish 80:80 \
  --publish 8080:8080 \
  --publish 8443:8443 \
  --volume nextcloud_aio_mastercontainer:/mnt/docker-aio-config \
  --volume /var/run/docker.sock:/var/run/docker.sock:ro \
  ghcr.io/nextcloud-releases/all-in-one:latest
Beschreibung
  1. Startet einen neuen Container aus einem Image
  2. Deaktiviert die Weiterleitung von Signalen (z. B. SIGINT/SIGTERM) vom Docker-Client an PID 1 im Container
  3. Vergibt einen eindeutigen Containernamen zur späteren Referenz
  4. Aktiviert die Neustart-Richtlinie „always“: Container wird nach Absturz oder Daemon-Neustart automatisch neu gestartet außer nach manuellem docker stop
  5. Container: 80/TCP --> Host: 80/TCP
  6. Container: 8080/TCP --> Host: 8080/TCP
  7. Container: 8443/TCP --> Host: 8443/TCP
  8. Bindet ein benanntes Volume ein. Persistiert Konfiguration unter /mnt/docker-aio-config im Container. Volume wird automatisch erstellt, falls nicht vorhanden.
  9. Bindet den Docker-Daemon-Socket des Hosts im Container ein (read-only). Erlaubt dem AIO-Mastercontainer, über die Docker-API Host-Container zu erstellen/stoppen/konfigurieren. :ro verhindert das Modifizieren/Ersetzen der Socket-Datei, begrenzt jedoch nicht die API-Berechtigungen.
  10. Image-Referenz inkl. Tag. latest verwendet den jeweils neuesten Build

Anhang

Siehe auch




Dokumentation

Links

Projekt

Weblinks