Ich war verwundert, dass es den Artikel noch nicht gab, da Docker doch eine hohe Bekanntheit hat. Anhand von zwei Ubuntu(Users) spezifischen Beispielen versuche ich anfängerfreundlich zu erklären. Hoffe es ist einigermaßen gelungen.
Docker
Anmeldungsdatum: Beiträge: 1277 Wohnort: Deutschland |
|
||
![]() Anmeldungsdatum: Beiträge: 384 Wohnort: Köln |
Schön, dass Du diesen Artikel hier einstellst. Docker ist tatsächlich wichtig. Mich wundert, dass die Dockerumgebung aus den Paketquellen nicht funktioniert. Unter https://docs.docker.com/engine/install/ubuntu/#uninstall-old-versions wird ja ausdrücklich darauf hingewiesen, dass inoffizielle Pakete aus Distributionen Konflikte mit offiziellen Docker-Paketen verursachen können. Ich nutze Docker daher bereits seit Jahren aus offiziellen Dockerquellen und nicht aus den Ubuntu-Paketen. Ich frage mich, wozu diese Pakete überhaupt in der Distro sind. Folgende Übersetzung aus vorgenannter Quelle könnte Deinem Text vorangestellt werden: Die Ubuntu-Distribution stellt inoffizielle Docker-Pakete bereit, die mit den offiziellen Paketen von Docker in Konflikt geraten können. Sie müssen ggf. vor Installation der offiziellen Version von Docker Engine deinstalliert werden. Die inoffiziellen Pakete, die deinstalliert werden müssen, sind: docker.io docker-compose docker-compose-v2 docker-doc podman-docker Außerdem hängt Docker Engine von containerd und runc ab. Docker Engine bündelt diese Abhängigkeiten in einem Paket: containerd.io. Wenn Du containerd oder runc zuvor installiert hast, dann deinstalliere sie, um Konflikte mit den Versionen zu vermeiden, die mit Docker Engine verbunden sind. Führe den folgenden Befehl aus, um alle in Konflikt stehenden Pakete zu deinstallieren:
|
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 1277 Wohnort: Deutschland |
Das war mir im Detail so gar nicht klar. Füge das gerne selber dem Artikel hinzu, damit du auch als Autor geführt wirst. |
||
![]() Anmeldungsdatum: Beiträge: 384 Wohnort: Köln |
OK, habe ich gemacht. Ich installiere außerdem immer auch die Pakete docker-ce-cli docker-buildx-plugin docker-compose-plugin mit; so beschreibe ich es in meinem Tutorial: (https://tutorials.kernke.koeln/serveranwendungen/docker.html. Damit bin ich dann für alle Anwendungsfälle (z.B. Vaultwarden oder Paperless NGX) gut aufgestellt. |
||
![]() Anmeldungsdatum: Beiträge: 384 Wohnort: Köln |
Übrigens ist kein Neustart des Rechners erforderlich. Docker läuft sofort. Damit die Rechteänderung für den Standarduser greift, ist höchstens einmal abmelden und neu anmelden erforderlich. |
||
Wikiteam
![]() Anmeldungsdatum: Beiträge: 1514 Wohnort: Bad Oeynhausen |
Nach langer Liegezeit hat es der Artikel nun endlich ins Wiki geschafft. Inhaltlich ist er noch ein wenig dünn, aber das lässt sich ja mit der Zeit bestimmt ausbauen. Vielen Dank! |
||
![]() Anmeldungsdatum: Beiträge: 4783 |
Ein Helfer Skript, um das Docker.com Repository bequem im DEB822 Format mit integrierten ASCII armierten Sicherheitsschlüssel zu den APT Quellen hinzuzufügen, für Noble Numbat, Oracular Oriole und Plucky Puffin: #!/usr/bin/env bash #----------------------------------------------------------- # Ubuntu 24.04, 24.10 and 25.04 DEB822 little helper script # Docker apt repository #----------------------------------------------------------- RELEASE_VERSION=$(lsb_release -cs 2>/dev/null) printf "\n \033[45m\033[1;36m==> Running on $RELEASE_VERSION \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ [ $RELEASE_VERSION = noble ] || [ $RELEASE_VERSION = oracular ] || [ $RELEASE_VERSION = plucky ] && echo "$RELEASE_VERSION good." || \ printf "\n \033[41m\033[1;36m==> Sorry, not for $RELEASE_VERSION.\033[0m \n \n" && \ [ $RELEASE_VERSION = noble ] || [ $RELEASE_VERSION = oracular ] || [ $RELEASE_VERSION = plucky ] || exit 1 printf "\n \033[45m\033[1;36m==> Test sudo. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ sudo echo "sudo Test, OK." && \ printf "\n \033[45m\033[1;36m==> Make docker.sources entry. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ echo "X-Repolib-Name: docker-apt-repository Enabled: yes Types: deb URIs: https://download.docker.com/linux/ubuntu Suites: $RELEASE_VERSION Components: stable Architectures: amd64 Signed-By: $(wget -O- https://download.docker.com/linux/ubuntu/gpg | \ sed -e 's/^$/./' -e 's/^/ /')" | \ sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null && \ printf "\n \033[45m\033[1;36m==> Set APT-Pinning. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \ echo "Docker Package Priority:" echo ' Package: * Pin: origin download.docker.com Pin-Priority: 1200 ' | sudo tee /etc/apt/preferences.d/docker && \ printf "\n \033[45m\033[1;36m==> Docker apt repository active now. \033[0m\033[42m\033[1;36m ==> Done.\033[0m \n \n" || \ printf "\n \033[41m\033[1;36m==> Sorry something failed.\033[0m \n \n" printf "\n \033[43m\033[1;36m==> Docker apt repository REMOVE? \033[0m\033[41m\033[1;36m ==> ? \033[0m \n" && \ echo "" && \ echo "Only if you realy like to remove, type ==> Yes <== for confirmation." && \ read -e -p " [y/N] " YN [[ $YN == "Yes" ]] && \ sudo rm -v /etc/apt/sources.list.d/docker.sources && \ sudo rm -v /etc/apt/preferences.d/docker && \ printf "\n \033[45m\033[1;36m==> Docker apt repository removed. \033[0m\033[42m\033[1;36m ==> Done.\033[0m \n \n" || \ echo "" && \ [ -f /etc/apt/sources.list.d/docker.sources ] && \ echo "Not removed. Speichern als: docker-apt-repository-install-helper.sh Ausführbar machen: chomd +x docker-apt-repository-install-helper.sh Und ausführen: ./docker-apt-repository-install-helper.sh Wenn man auf die Abfrage, ob das Docker APT Repository entfernt werden soll, "Yes" eingibt, entfernt es auch die Einträge für das Docker.com Repository wieder. |
||
![]() Anmeldungsdatum: Beiträge: 320 Wohnort: im Exil ;( |
Warum diese Schleife? Dadurch wird sudo apt-get remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 1277 Wohnort: Deutschland |
Stimmt, die Schleife ist unnötig. Habe ich entfernt. |