[gelöst] Nextcloud mit podman installiert - Debian 11

Hallo Forum,

die folgende Installationsvariante habe ich als Leitfaden mit Debian 11 ausprobiert:

Verwendetes podman und podman-compose

podman version &&  podman-compose version
Client:       Podman Engine
Version:      4.2.0
API Version:  4.2.0
Go Version:   go1.19
Built:        Thu Jan  1 01:00:00 1970
OS/Arch:      linux/amd64
['podman', '--version', '']
using podman version: 4.2.0
podman-composer version  1.0.3
podman --version 
podman version 4.2.0
exit code: 0

Netzwerkeinrichtung

nc-kay@deb11-serv:~$ podman network create nextcloud-net
nextcloud-net
nc-kay@deb11-serv:~$ podman network ls
NETWORK ID    NAME           DRIVER
9bec7ea8f70e  nextcloud-net  bridge
2f259bab93aa  podman         bridge
nc-kay@deb11-serv:~$

Installation

Listing 1: Volumes

podman volume create nextcloud-app
podman volume create nextcloud-data
podman volume create nextcloud-db


Listing 2: MariaDB im Container

podman run --detach \
  --env MYSQL_DATABASE=nextcloud  \
  --env MYSQL_USER=nextcloud \
  --env MYSQL_PASSWORD=DB-User-Passwort \
  --env MYSQL_ROOT_PASSWORD=DB-Root-Passwort \
  --volume nextcloud-db:/var/lib/mysql \
  --network nextcloud-net \
  --restart on-failure \
  --name nextcloud-db \
  docker.io/library/mariadb:10


Listing 3: Nextcloud ausrollen

podman run --detach \
  --env MYSQL_HOST=nextcloud-db.dns.podman \
  --env MYSQL_DATABASE=nextcloud \
  --env MYSQL_USER=nextcloud \
  --env MYSQL_PASSWORD=DB-User-Passwort \
  --env NEXTCLOUD_ADMIN_USER=NC-Admin \
  --env NEXTCLOUD_ADMIN_PASSWORD=NC-Passwort \
  --volume nextcloud-app:/var/www/html \
  --volume nextcloud-data:/var/www/html/data \
  --network nextcloud-net \
  --restart on-failure \
  --name nextcloud \
  --publish 8080:80 \
  docker.io/library/nextcloud:latest


Listing 4: Podman-Konfiguration

/usr/share/containers/containers.conf
/etc/containers/containers.conf
$HOME/.config/containers/containers.conf

Die Passwörten wurden aus der Anleitung übernommen.

https://i.imgur.com/wL5oFPF.jpg

Die folgende Fehlermeldung erhalte ich:

https://i.imgur.com/ahzwuiO.jpg

Fehler

Error while trying to create admin user: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known

Der die GUI ist nur über http://192.168.178.57:8080 erreichbar.
https:// funktioniert nicht

Das Netzwerk sieht wie folgt aus:


podman network ls
NETWORK ID    NAME           DRIVER
9bec7ea8f70e  nextcloud-net  bridge
2f259bab93aa  podman         bridge

Vergleich aus der Anleitung:

Status der Container

podman ps
CONTAINER ID  IMAGE                               COMMAND               CREATED            STATUS                PORTS                 NAMES
fcaec5884164  docker.io/library/mariadb:10        mariadbd              About an hour ago  Up About an hour ago                        nextcloud-db
9cb79e6b44b7  docker.io/library/nextcloud:latest  apache2-foregroun...  About an hour ago  Up About an hour ago  0.0.0.0:8080->80/tcp  nextcloud

Wie löse ich das Problem?

Wo finde ich eine funktionierende Anleitung für Nextcloud mit podman?

Was habe ich ich für Debian 11 von der Anleitung für Fedora 36 falsch übertragen?

MfG
nc-kay

Hier ein ähnliches Problem:

oder hier mit Docker:

@Reiner_Nippes
Hast Du eine Lösung für mich?

Alternativanleitung, älter: https://techviewleo.com/run-nextcloud-on-containers-using-podman/

Ok, @nc-kay und was genau war jetzt deine Frage/Problem?

N.B. du hast dein Posting nach meiner Anfrage von oben sehr schön ergänzt.

Hallo, sind noch Fragen zu meiner Frage offen?

Ein Netzwerkproblem mit Podman 4.2 vermute ich.

https://wiki.archlinux.org/title/Podman

Hat jemand eine funktionierende debianbasierte Nextcloud Podman installation?

Wie gehe ich bei der Fehlersuche vor?

Cockpit-Podman ist installiert.

apt show cockpit-podman
Package: cockpit-podman
Version: 28-1
Priority: optional
Section: admin
Maintainer: Martin Pitt <mpitt@debian.org>
Installed-Size: 3.919 kB
Depends: cockpit-bridge (>= 138), cockpit-system (>= 138), podman (>= 2.0.4)
Homepage: https://github.com/cockpit-project/cockpit-podman
Download-Size: 1.004 kB
APT-Manual-Installed: yes
APT-Sources: http://deb.debian.org/debian bullseye/main amd64 Packages
Description: Cockpit component for Podman containers
 The Cockpit Web Console enables users to administer GNU/Linux servers using a
 web browser.
 .
 This package adds an user interface for Podman containers.

Cockpit-Podman ist erreichbar unter:


https://192.168.178.57:9090/

MfG
nc-kay

ja. nimm docker. podman ist was für leute mit zu viel freizeit.

wenn’s denn unbedingt podman sein muss.

er sagt dir, dass er die ip adresse deines datenbank containers nicht auflösen kann. was hast du als “rechner namen” für den database container in der anmelde maske eingegeben?

1 Like

Es soll podman sein. Ich will es lernen.

OT

Mit Oracle Linux 9 bin ich Lokal zum Erfolg gekommen.

sudo dnf info podman
Letzte Prüfung auf abgelaufene Metadaten: vor 13:51:21 am Fr 02 Sep 2022 17:50:06 CEST.
Installierte Pakete
Name         : podman
Epoch        : 2
Version      : 4.1.1
Release      : 1.0.1.el9_0
Architecture : x86_64
Size         : 45 M
Quelle       : podman-4.1.1-1.0.1.el9_0.src.rpm
Repository   : @System
Aus Paketque : ol9_appstream
Summary      : Manage Pods, Containers and Container Images
URL          : https://podman.io/
Lizenz       : ASL 2.0 and GPLv3+
Description  : podman (Pod Manager) is a fully featured container engine that is a
             : simple daemonless tool.  podman provides a Docker-CLI comparable command
             : line that eases the transition from other container engines and allows
             : the management of pods, containers and images.  Simply put: alias
             : docker=podman. Most podman commands can be run as a regular user, without
             : requiring additional privileges.
             : 
             : podman uses Buildah(1) internally to create container images.
             : Both tools share image (not container) storage, hence each can use or
             : manipulate images (but not containers) created by the other.
             : 
             : Manage Pods, Containers and Container Images
             : podman Simple management tool for pods, containers and images

Verfügbare Pakete
Name         : podman
Epoch        : 2
Version      : 4.1.1
Release      : 1.0.1.el9_0
Architecture : src
Size         : 16 M
Quelle       : None
Repository   : ol9_appstream
Summary      : Manage Pods, Containers and Container Images
URL          : https://podman.io/
Lizenz       : ASL 2.0 and GPLv3+
Description  : podman (Pod Manager) is a fully featured container engine that is a
             : simple daemonless tool.  podman provides a Docker-CLI comparable command
             : line that eases the transition from other container engines and allows
             : the management of pods, containers and images.  Simply put: alias
             : docker=podman. Most podman commands can be run as a regular user, without
             : requiring additional privileges.
             : 
             : podman uses Buildah(1) internally to create container images.
             : Both tools share image (not container) storage, hence each can use or
             : manipulate images (but not containers) created by the other.
             : 
             : Manage Pods, Containers and Container Images
             : podman Simple management tool for pods, containers and images

Oracle 9
Podman Docker
WARN[0101] aardvark-dns binary not found, container dns will not be enabled 
bf5affb1e829b6724698c2b41cd710812328a079ede15829592b68c0e8a36e1b

Info

sudo dnf info aardvark-dns
Letzte Prüfung auf abgelaufene Metadaten: vor 13:54:15 am Fr 02 Sep 2022 17:50:06 CEST.
Installierte Pakete
Name         : aardvark-dns
Epoch        : 2
Version      : 1.0.1
Release      : 36.0.1.el9_0
Architecture : x86_64
Size         : 3.5 M
Quelle       : containers-common-1-36.0.1.el9_0.src.rpm
Repository   : @System
Aus Paketque : ol9_appstream
Summary      : Authoritative DNS server for A/AAAA container records
URL          : https://github.com/containers/aardvark-dns
Lizenz       : ASL 2.0 and BSD and MIT
Description  : Authoritative DNS server for A/AAAA container records
             : 
             : Forwards other request to configured resolvers.
             : Read more about configuration in `src/backend/mod.rs`.

Nachdem ich aardvark-dns installiert habe, konnte ich Nextcloud mit http://localhost:8080
erreichen.

Eingabe bei Oracle lokal:
grafik

Die Konfiguration erfolgte dann von alleine.

Über IP-Adress:8080 ist die Instanz nicht zu erreichen (nicht vertausenwürde Domain …)

OT_Ende

So sollte es eigentlich auch bei Debian 11 sein.

Was meinst Du damit?

Benötigt man podman 4.2 zwingend das Paket aardvark-dns ?

https://packages.debian.org/search?searchon=names&keywords=aardvark

Container-focused DNS server

Netavark is designed to work with but is also applicable for other OCI container management applications.

Gibt es leider nur in Debian testing oder sid, in Backports ist es auch nicht.

Hallo @nc-kay es ist ein halbes Jahr vergangen aber die Antwort auf alle deine Fragen ist nicht 42 :wink: sondern immer noch: nimm dir Zeit die Tutorials und docs komplett anzuschauen/lesen und verstehen.

Deine Fragen in diesem und früheren Posts zeigen dass du sehr motiviert bist und viele Sachen ausprobierst, gleichzeitig aber nicht die Zeit nimmst zu verstehen was du machst. wenn man docker(-compose) verstanden hat kann man relativ einfach zu podman migrieren… Weil du jetzt diegleichen Fragen wie bei Docker stellst, zeigt es dass du nichts gelernt hast…

Bitte nimm dir die Zeit, lese und verstehe Docker/Docker-compose/Podman whatever - und zwar wirklich “Verstehen”… dann wirst du viele Probleme selbst lösen können!

1 Like

Da bin ich dabei.

Jeden Tag lerne ich was neues.

Wer nutzt hier aktiv den Nachfolger von Docker, also Podman?
Die Netzwerkkonfiguration ist anders als bei Docker, das kann man nicht vergleichen.

Podman ist gerade dabei sich zu etablieren, Tutorials gibt es noch nicht viele.

@wwe
Wie löse ich das Problem?
Auch mit einem Installierten Desktop bei Debian 11 bekomme ich den anfänglichen Fehler. http://lokalhost:8080 wurde im Firefox aufgerufen.

Fehlermeldung:

Error while trying to create admin user: Failed to connect to the database: An exception occurred in the driver: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Name or service not known

Für Experten sollte das kein Problem, nur wo sind die?
Jetzt bin ich gespannt.

OT Mit Oracle_Linux_9 komme ich mit http://localhost:8080 auf die Netxtclloud

Zitat aus Artikel:

Podman ist auf einem guten Weg, Docker zu ersetzen, kämpft aber noch mit Kinderkrankheiten, die besonders bei der Arbeit mit entfernten Maschinen auftreten.

Was gibt es daran zu verstehen, da bite ich um eine Erklärung oder noch besser eine Lösung?

MfG
nc-kay

Edit: 3. Sept. 2022
Wer betreibt Nextcloud mit podman mit einer debianbasierten Distribution
und hat eine Lösung für mich?

da (roter pfeil, von dir abgeschnitten.) muss man die verbindungsdaten zur datenbank eingeben. u.a. der rechner name des “datenbank servers”. sonst kann sich nc nicht mit der db verbinden.

was hast du in das feld eingetragen?

image

1 Like

google suche. zweiter treffer. die fehlermeldung bedeutet “irgendwas mit dns”. damit

bist du auf der richtigen spur. soweit ich weiß (podman 2.x knowhow) bringt podman, anders als docker, kein dns mit. wenn man die container untereinander vernetzen will, macht man das entweder via ip adressen oder bau sich einen dns dienst für die container selber.

wenn dem so ist, hat da sich seit podman 2 nix getan.

1 Like

@Reiner_Nippes und Alle,

lest Ihr das auch aus der Anleitung, das podman mit Nextcloud Debian sid (unstable) möglich ist?

Zitat: Ferdinand Thommes

Während der Tests lief Fedora 36 in einem Proxmox-Container, Siduction dagegen fest auf einem Notebook. Die Installation von Podman erfolgt unter Fedora mittels sudo dnf install podman cockpit-podman und unter Debian mit dem Aufruf sudo apt install podman cockpit-podman.
:hot_face: :hot_face:
Das sollte analog auch unter Debian Stable und dessen Derivaten funktionieren.
:hot_face: :hot_face:
Durch das Verwenden älterer Versionen von Podman kommt es mitunter zu Abweichungen im Verhalten.

Das ist vermutlich nur so dahingeschrieben.
Woher soll das Paket “aardvark-dns” kommen?

@wwe
Du hast so ein System am laufen?

Weil du jetzt die gleichen Fragen wie bei Docker stellst, zeigt es dass du nichts gelernt hast…

Du hast dem zur Folge alles gelernt, oder nicht verstanden?

MfG
nc-kay

ich habe mein docker-compose System seit mehr als 2 Jahren. Ich habe mich bewusst für diese Technologie entschieden, habe mehrere Monate daran gearbeitet die Zusammenhänge zu verstehen und die laufenden Systeme zu optimieren, so dass ich jetzt problemlos und mit kurzer Downtime Updates, Backup, Restore und Migration andere Hardware durchführen kann.

Bei dir sehe ich dass du von einem Tutorial zum anderen springst, ohne die Grundlagen zu verstehen (oder auch nur verstehen zu wollen). Nicht jeder muss alles im Detail beherrschen aber wenn man ein halbwegs komplexes System im Internet betreiben möchte, sollte man die zugrundliegende Technik zumindest im Ansatz verstehen. Es ist OK wenn man das nicht möchte - es gibt massenhaft gute managed Nextcloud Angebote - nimm sie. Wenn du selbst hosten willst lerne die Basics bevor du mit sinnlosen Buzzwords um dich wirfst und persönlichen kostenlosen Support von Anderen einforderst.

Und bevor der Einwand kommt:

nicht jeder Fehler ist einfach zu deuten, dieser hier schon und hat nichts mit Nextcloud, Docker oder podman zu tun - eine google Suche liefert 380k Ergebnisse…

Docker gibt es bald nicht mehr, meine Prognose.
Zudem benötigt Docker Rootrechte.
Docker ist oldschool.

nicht jeder Fehler ist einfach zu deuten, dieser hier schon und hat nichts mit Nextcloud, Docker oder podman zu tun - eine google Suche liefert 380k Ergebnisse…

Da irrst Du, nach der Installation von aardvark-dns war meine NC Oracle Linux 9 Instanz startfähig. Zuvor der gleiche Fehler wie hier im Thread beschrieben.

docker-compose System seit mehr als 2 Jahren.

Die Zeit ist aus meiner Sicht zu lange.
Ein Student hat nicht so viel Zeit.

Mit deiner jetzt erarbeiten Expertise solle es möglich sein, das kleine Debian 11 Problem zu lösen. Nur wie?

@Reiner_Nippes

Aardvark-dns that replaces the previous DNS name custom plugin. Aardvark-dns is a DNS server that provides name resolution and forwarding for container networks

Kann man das fehlende Paket aardvark-dns von GitHub mit Debian 11 Bullseye einsetzen?

MfG
nc-kay

Gibt es keine Lösung, oder Meinungen dazu?

Ergebnis:
Nextcloud 24.0.5 kann mit podman 4.2.1 und Debian 11 genutzt werden.
Bei Podman 4.2.1, sind so einige Abhängigkeiten mit den backports und alvistack aufzulösen. Ein weiteres Problem kann damit gelöst werden: Trusted domains in a Podman containerized Nextcloud · joefidler/joefidler.github.io Wiki · GitHub

Leider habe ich den gesamten Vorgang nicht dokumentiert. :frowning:
Da ärgere ich mich jetzt.
Bei der nächsten Nextcloud Installation mal werde ich das tun.

netavark - Can’t resolve hostname of other service in docker-compose.yml Can't resolve hostname of other service in docker-compose.yml · Issue #455 · containers/podman-compose · GitHub

Das habe ich aus dem Terminalverlauf retten können:

sudo apt install -t bullseye-backports podman-netavark podman-netavark-dbgsym

podman info | grep network
  networkBackend: netavark
  network:


apt search aardvark
Sortierung… Fertig
Volltextsuche… Fertig
podman-aardvark-dns/unbekannt,now 100:1.1.0-1 amd64  [installiert]
  Authoritative DNS server for A/AAAA container records

podman-aardvark-dns-dbgsym/unbekannt,now 100:1.1.0-1 amd64  [installiert]
  debug symbols for podman-aardvark-dns


apt show podman-aardvark-dns -a
Package: podman-aardvark-dns
Version: 100:1.1.0-1
Priority: optional
Section: devel
Maintainer: Wong Hoi Sing Edison <hswong3i@gmail.com>
Installed-Size: 1.510 kB
Depends: libc6 (>= 2.28), libgcc-s1 (>= 3.3), podman
Homepage: https://github.com/containers/aardvark-dns/tags
Download-Size: 530 kB
APT-Manual-Installed: yes
APT-Sources: http://downloadcontent.opensuse.org/repositories/home:/alvistack/Debian_11  Packages
Description: Authoritative DNS server for A/AAAA container records
 Authoritative dns server for A/AAAA container records. Forwards other
 request to host's /etc/resolv.conf

apt show podman-aardvark-dns-dbgsym -a
Package: podman-aardvark-dns-dbgsym
Version: 100:1.1.0-1
Auto-Built-Package: debug-symbols
Priority: optional
Section: debug
Source: podman-aardvark-dns
Maintainer: Wong Hoi Sing Edison <hswong3i@gmail.com>
Installed-Size: 861 kB
Depends: podman-aardvark-dns (= 100:1.1.0-1)
Build-Ids: a68f6d5755c5302c7d648d8a077ea9f5c9d6494c
Download-Size: 481 kB
APT-Manual-Installed: yes
APT-Sources: http://downloadcontent.opensuse.org/repositories/home:/alvistack/Debian_11  Packages
Description: debug symbols for podman-aardvark-dns





podman run --detach   --env MYSQL_DATABASE=nextcloud    --env MYSQL_USER=nextcloud   --env MYSQL_PASSWORD=DB-User-Passwort   --env MYSQL_ROOT_PASSWORD=DB-Root-Passwort   --volume nextcloud-db:/var/lib/mysql   --network nextcloud-net   --restart on-failure   --name nextcloud-db   docker.io/library/mariadb:10


podman run --detach   --env MYSQL_HOST=nextcloud-db.dns.podman   --env MYSQL_DATABASE=nextcloud   --env MYSQL_USER=nextcloud   --env MYSQL_PASSWORD=DB-User-Passwort   --env NEXTCLOUD_ADMIN_USER=NC-Admin   --env NEXTCLOUD_ADMIN_PASSWORD=NC-Passwort   --volume nextcloud-app:/var/www/html   --volume nextcloud-data:/var/www/html/data   --network nextcloud-net   --restart on-failure   --name nextcloud   --publish 8080:80   docker.io/library/nextcloud:latest


Evtl. auch interessant: [gelöst] Nextcloud mit podman installiert - Oracle Linux 9


Debian 11 mit

podman version && podman-compose version
Client:       Podman Engine
Version:      4.2.1
API Version:  4.2.1
Go Version:   go1.19
Built:        Thu Jan  1 01:00:00 1970
OS/Arch:      linux/amd64
['podman', '--version', '']
using podman version: 4.2.1
podman-composer version  1.0.3
podman --version 
podman version 4.2.1



podman info | grep network
  networkBackend: cni
  network:

sudo apt install podman-aardvark-dns podman-aardvark-dns-dbgsym

sudo apt install -t bullseye-backports podman-netavark podman-netavark-dbgsym

sudo nano /etc/containers/containers.conf

####
[network]

# Explicitly use netavark. See https://github.com/containers/podman-compose/issues/455
network_backend = "netavark"
####

podman system reset --force

podman info | grep network
  networkBackend: netavark
  network:


podman volume create nextcloud-app
podman volume create nextcloud-data
podman volume create nextcloud-db


podman network create nextcloud-net


podman run --detach \
  --env MYSQL_DATABASE=nextcloud  \
  --env MYSQL_USER=nextcloud \
  --env MYSQL_PASSWORD=DB-User-Passwort \
  --env MYSQL_ROOT_PASSWORD=DB-Root-Passwort \
  --volume nextcloud-db:/var/lib/mysql \
  --network nextcloud-net \
  --restart on-failure \
  --name nextcloud-db \
  docker.io/library/mariadb:10


podman run --detach \
  --env MYSQL_HOST=nextcloud-db.dns.podman \
  --env MYSQL_DATABASE=nextcloud \
  --env MYSQL_USER=nextcloud \
  --env MYSQL_PASSWORD=DB-User-Passwort \
  --env NEXTCLOUD_ADMIN_USER=NC-Admin \
  --env NEXTCLOUD_ADMIN_PASSWORD=NC-Passwort \
  --volume nextcloud-app:/var/www/html \
  --volume nextcloud-data:/var/www/html/data \
  --network nextcloud-net \
  --restart on-failure \
  --name nextcloud \
  --publish 8080:80 \
  docker.io/library/nextcloud:latest


podman exec -it -u www-data nextcloud /bin/sh

php occ config:system:set trusted_domains 1 --value=127.0.0.1
php occ config:system:set trusted_domains 2 --value=192.168.178.47
exit

http://192.168.178.47:8080/login

User: NC-Admin
Passwort: NC-Passwort

Erklärungen bitte aus dem Thread, auch aus den Links erlesen.

How to fix Docker-Nextcloud Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it.