Portainer auf 2.0 updaten

Lockslay

Member
Nov 27, 2020
119
1
23
50
Hallo zusammen,

ich habe mir Portainer las LXC installiert, die version ist diese: 1.24.1
Es gibt aber bereits die Version 2.1.1 wie kann ich das unter Proxmox updaten.

Ich hatte etwas von pull gelesen.

Ich habe mich aug die Konsole eingewählt und das eingegeben:

docker-compose pull
docker-compose up -d
geht aber leider nicht.

Kann mir bitte einer sagen wie ich das genau machen kann?
 
Portainer muss man wie alle anderen Docker Container updaten. Portainer Docker-Container stoppen, zerstören, neu pullen und wieder starten.

Also "docker stop IdDeinesPortainers" und "docker rm IdDeinesPortainers" nicht vergessen.
 
Last edited:
  • Like
Reactions: Lockslay
Hallo und danke für die schnelle Antwort.

Mit:
docker ps

habe ich mir meinen Container angezeigt und die Id ausgelesen.
Den Container habe ich gestoppt.

Wenn ich aber jetzt docker rm Id eingebe ist das image doch gelöscht.

Muss ich das löschen und dann ein
docker-compose pull
docker-compose up -d
eingeben??

Frage lieber nach.
 
Hallo, was willst du mir damit sagen.
Ist dein Update nicht durchgelaufen??
Manche haben wohl gerade Probleme mit Docker im LXC nach einem Update. Bei mir läufts aber noch.
Wenn ich aber jetzt docker rm Id eingebe ist das image doch gelöscht.
Ist bei Docker immer so. Man aktualisiert bei Docker nichts. Immer wenn man etwas aktualisieren möchte muss man manuell den ganzen Container wegwerfen/zerstören und dann komplett neu laden. Das wichtige sind die Volumes, wo die Konfigs und Daten für den Container liegen und bleiben ja auch erhalten, wenn du den Container wegwirfst. Musst du dann dem neuen Docker-Container halt die richtigen Konfigs und Volumes zuordnen, falls das nicht eh schon durch eine Docker-Compose-Konfig-Datei gemacht wird.

Edit:
Hier mal meine Notizen zum Portainer-Updaten:
16.) Update Portainer:
# docker pull portainer/portainer
# docker stop portainer
# docker rm portainer
# 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
Socket, Ports und "portainer_data"-Volume musst du entsprechend für deinen Fall anpassen. Ich hatte da kein fertiges Template benutzt sondern mir Portainer manuell im LXC auf einem Debian-Template aufgesetzt.
 
Last edited:
  • Like
Reactions: Lockslay
Ist bei Docker immer so. Man aktualisiert bei Docker nichts. Immer wenn man etwas aktualisieren möchte muss man manuell den ganzen Container wegwerfen/zerstören und dann komplett neu laden. Das wichtige sind die Volumes, wo die Konfigs und Daten für den Container liegen und bleiben ja auch erhalten, wenn du den Container wegwirfst. Musst du dann dem neuen Docker-Container halt die richtigen Konfigs und Volumes zuordnen, falls das nicht eh schon durch eine Docker-Compose-Konfig-Datei gemacht wird.
Proxmox muss neu gestartet werden, nachdem die Aktualisierungen abgeschlossen sind, damit Docker nicht mehr funktioniert.
 
  • Like
Reactions: Lockslay
Proxmox muss neu gestartet werden, nachdem die Aktualisierungen abgeschlossen sind, damit Docker nicht mehr funktioniert.
Hab den Testweise nochmal aktualisiert und neu gestartet. Läuft immer noch alles, auch der Pi-Hole im Docker im LXC.
 
  • Like
Reactions: Lockslay
Hab den Testweise nochmal aktualisiert und neu gestartet. Läuft immer noch alles, auch der Pi-Hole im Docker im LXC.
apt install proxmox-widget-toolkit=2.4-3 libpve-storage-perl=6.3-4 lxc-pve=4.0.3-1 pve-manager=6.3-2
 
apt install proxmox-widget-toolkit=2.4-3 libpve-storage-perl=6.3-4 lxc-pve=4.0.3-1 pve-manager=6.3-2
pveversion -v sagt mir:
Code:
proxmox-ve: 6.3-1 (running kernel: 5.4.78-2-pve)
pve-manager: 6.3-3 (running version: 6.3-3/eee5f901)
pve-kernel-5.4: 6.3-3
pve-kernel-helper: 6.3-3
pve-kernel-5.4.78-2-pve: 5.4.78-2
pve-kernel-5.4.78-1-pve: 5.4.78-1
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.4-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: residual config
ifupdown2: 3.0.0-1+pve3
ksmtuned: 4.20150325+b1
libjs-extjs: 6.0.1-10
libknet1: 1.16-pve1
libproxmox-acme-perl: 1.0.7
libproxmox-backup-qemu0: 1.0.2-1
libpve-access-control: 6.1-3
libpve-apiclient-perl: 3.1-3
libpve-common-perl: 6.3-2
libpve-guest-common-perl: 3.1-4
libpve-http-server-perl: 3.1-1
libpve-storage-perl: 6.3-5
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.6-1
lxcfs: 4.0.6-pve1
novnc-pve: 1.1.0-1
proxmox-backup-client: 1.0.6-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.4-4
pve-cluster: 6.2-1
pve-container: 3.3-2
pve-docs: 6.3-1
pve-edk2-firmware: 2.20200531-1
pve-firewall: 4.1-3
pve-firmware: 3.1-3
pve-ha-manager: 3.1-1
pve-i18n: 2.2-2
pve-qemu-kvm: 5.1.0-8
pve-xtermjs: 4.7.0-3
qemu-server: 6.3-3
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-2
zfsutils-linux: 0.8.5-pve1

Deine 3 Packes sind bei mir also sogar neuer.
 
Last edited:
Hallo zusammen,
da ich einen Backupserver laufen habe, dachte ich mir ich mach das nach der ersten Anleitung.
Also "docker stop IdDeinesPortainers" und "docker rm IdDeinesPortainers" nicht vergessen.

Danach lief aber in dem LXC nix mehr. Also Backup zurückgespielt.
Auch kein Docker.

Wobei ich das Angezeigt bekomme:

Code:
docker versionClient:
 Version:           19.03.13
 API version:       1.40
 Go version:        go1.13.8
 Git commit:        4484c46
 Built:             Thu Oct 15 18:34:11 2020
 OS/Arch:           linux/amd64
 Experimental:      false
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
root@Docker:~# docker ps
to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
root@Docker:~# Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

Code:
docker-compose -vdocker-compose version 1.23.1, build b02f1306

Ich bekomme aber Portainer nicht mehr Angezeigt ??????
docker ps
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

Code:
service docker start
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.

Code:
systemctl status docker.service
* docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Sun 2021-02-07 18:39:52 UTC; 11s ago
TriggeredBy: * docker.socket
       Docs: https://docs.docker.com
    Process: 1253 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
   Main PID: 1253 (code=exited, status=1/FAILURE)

Feb 07 18:39:52 Docker systemd[1]: docker.service: Scheduled restart job, restart counter is at 3.
Feb 07 18:39:52 Docker systemd[1]: Stopped Docker Application Container Engine.
Feb 07 18:39:52 Docker systemd[1]: docker.service: Start request repeated too quickly.
Feb 07 18:39:52 Docker systemd[1]: docker.service: Failed with result 'exit-code'.
Feb 07 18:39:52 Docker systemd[1]: Failed to start Docker Application Container Engine


Hilfeeeeee
 
Code:
apt install proxmox-widget-toolkit=2.4-3 libpve-storage-perl=6.3-4 lxc-pve=4.0.3-1 pve-manager=6.3-2
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package proxmox-widget-toolkit
E: Unable to locate package libpve-storage-perl
E: Unable to locate package lxc-pve
E: Unable to locate package pve-manager
 
Das nach dem docker rm portainer kein Portainer mehr läuft ist normal. Du hast Portainer ja weggeworfen, da kann der auch nicht mehr laufen. Man kann Portainer nicht über Portainer aktualisieren. Musst du dich per SSH (oder über die ProxmoxGUI) mit dem Portainer-LXC verbinden und die Docker-Befehle manuell per CLI ausführen. Hast du dann das das neue Portainer geladen und gestartet, dann läuft auch Portainer wieder.

Docker sollte aber unabhängig von Portainer laufen. Vielleicht hast du da auch gerade das Problem mit Docker im LXC wie die anderen?
 
Last edited:
Hallo zusammen,


ich habe unter proxMox das Installiert.
apt install proxmox-widget-toolkit=2.4-3 libpve-storage-perl=6.3-4 lxc-pve=4.0.3-1 pve-manager=6.3-2

Code:
root@proxmox:~# pveversion -v
proxmox-ve: 6.3-1 (running kernel: 5.4.78-2-pve)
pve-manager: 6.3-2 (running version: 6.3-2/22f57405)
pve-kernel-5.4: 6.3-3
pve-kernel-helper: 6.3-3
pve-kernel-5.4.78-2-pve: 5.4.78-2
pve-kernel-5.4.78-1-pve: 5.4.78-1
pve-kernel-5.4.73-1-pve: 5.4.73-1
pve-kernel-5.4.34-1-pve: 5.4.34-2
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.4-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: 0.8.35+pve1
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.16-pve1
libproxmox-acme-perl: 1.0.7
libproxmox-backup-qemu0: 1.0.2-1
libpve-access-control: 6.1-3
libpve-apiclient-perl: 3.1-3
libpve-common-perl: 6.3-2
libpve-guest-common-perl: 3.1-4
libpve-http-server-perl: 3.1-1
libpve-storage-perl: 6.3-4
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.3-1
lxcfs: 4.0.6-pve1
novnc-pve: 1.1.0-1
proxmox-backup-client: 1.0.6-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.4-3
pve-cluster: 6.2-1
pve-container: 3.3-2
pve-docs: 6.3-1
pve-edk2-firmware: 2.20200531-1
pve-firewall: 4.1-3
pve-firmware: 3.1-3
pve-ha-manager: 3.1-1
pve-i18n: 2.2-2
pve-qemu-kvm: 5.1.0-8
pve-xtermjs: 4.7.0-3
qemu-server: 6.3-3
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-2
zfsutils-linux: 0.8.5-pve1

ProxMox wurde neue gestartet!

In der LXC bin ich per konsole.

Nur wenn ich Docker anwerfen will bekomme ich diese Meldung


Code:
docker run hello-world
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.


Wie bekomme ich den wieder Docker unter LXE zum laufen?
 
Findest du was in den Logs warum Docker nicht starten mag?

docker run hello-world
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
Meckert ja rum weil Docker nicht läuft.

Was ja zu dem passt:
systemctl status docker.service
* docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sun 2021-02-07 18:39:52 UTC; 11s ago
TriggeredBy: * docker.socket
Docs: https://docs.docker.com
Process: 1253 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
Main PID: 1253 (code=exited, status=1/FAILURE)

Ist dann die Frage warum der Docker-Service nicht mehr starten kann.
 
root@Docker:~# systemctl status docker.service
Code:
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enable>
     Active: failed (Result: exit-code) since Sun 2021-02-07 19:36:32 UTC; 2h 30min ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
    Process: 546 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/conta>
   Main PID: 546 (code=exited, status=1/FAILURE)

Feb 07 19:36:30 Docker systemd[1]: Failed to start Docker Application Container Engine.
Feb 07 19:36:32 Docker systemd[1]: docker.service: Scheduled restart job, restart count>
Feb 07 19:36:32 Docker systemd[1]: Stopped Docker Application Container Engine.
Feb 07 19:36:32 Docker systemd[1]: docker.service: Start request repeated too quickly.
Feb 07 19:36:32 Docker systemd[1]: docker.service: Failed with result 'exit-code'.
Feb 07 19:36:32 Docker systemd[1]: Failed to start Docker Application Container Engine.

Unter /var/log finde ich nichts zu Docker...
 
Ich habe jetzt einen neuen LXC aufgesetzt.
Ich erhalte nach der Installation von

sudo apt install docker.io curl

immer diese Meldung:

Code:
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
invoke-rc.d: initscript docker, action "start" failed.
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; disabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Mon 2021-02-08 02:06:17 UTC; 7ms ago
     Docs: https://docs.docker.com
  Process: 9567 ExecStart=/usr/sbin/dockerd -H fd:// $DOCKER_OPTS (code=exited, status=1/FAILURE)
Main PID: 9567 (code=exited, status=1/FAILURE)
dpkg: error processing package docker.io (--configure):
installed docker.io package post-installation script subprocess returned error exit status 1
Setting up binutils (2.31.1-16) ...
Setting up libintl-xs-perl (1.26-2+b4) ...
Setting up git (1:2.20.1-2+deb10u3) ...
Setting up needrestart (3.4-5) ...
Processing triggers for systemd (241-7~deb10u6) ...
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for libc-bin (2.28-10) ...
Errors were encountered while processing:
docker.io
E: Sub-process /usr/bin/dpkg returned an error code (1)


sudo systemctl start docker
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details


Kann da einer Helfen?
 
Last edited:
Hast du die Features "keyctl" und "nesting" für den LXC aktiviert? Die sind normal deaktiviert und ohne die beiden läuft Docker nicht.

Die "docker.io" ist eine alte Version von Docker die man eigentlich nicht mehr installieren sollte. Für die aktuelle Docker Version musst du erst das Docker Repo hinzufügen und es dann aus dem Docker Repo installieren.

Ich hab meinen unprivileged Debian 10 LXC so eingerichtet:
13.) Install Docker
# apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
# curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
# add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
# apt-get update && apt-get install docker-ce docker-ce-cli containerd.io
# systemctl enable docker
# nano /etc/sysctl.conf
Zeile hinzufügen:
net.ipv4.conf.all.forwarding = 1

14.) Portainer installieren
- Port 9000 TCP für in Proxmox Firewall freigeben
- # docker volume create portainer_data
- # 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

15.) Portainer aufrufen:
- http://Deine.LXC.IP.ADDRESSE:9000/
- Admin Account erstellen
- Docker wählen und nicht Kubernetes

16.) Update Portainer:
# docker pull portainer/portainer-ce
# docker stop portainer
# docker rm portainer
# 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

Bin dabei nach den offiziellen Anleitungen von Docker und Portainer gegangen:
https://docs.docker.com/engine/install/debian/
https://docs.docker.com/engine/install/linux-postinstall/
https://documentation.portainer.io/v2.0/deploy/linux/#docker-standalone
https://documentation.portainer.io/v2.0/upgrade/upddocker/

Edit:
Ah, hab noch was entdeckt. Portainer hat inzwischen von "portainer/portainer" zu "portainer/portainer-ce" gewechselt. Um das neue Portainer image zu laden muss man also "docker pull portainer/portainer-ce" statt "docker pull portainer/portainer" ausführen.
 
Last edited:
  • Like
Reactions: Lockslay
Ich versuche seit Tagen in einem Debian 10 LXC Docker zu installieren und erhalte die gleichen Fehlermeldungen wie die anderen. Habe jetzt einen komplett neuen CT angelegt und nur die Schritte unter 13) bei dir ausgeführt (keyctl/Nexting aktiv) und Docker läuft. Vielen Dank!
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!