[SOLVED] Nach heutigen Update gehen alle Docker LXC Container nicht mehr

harry1983

Member
Feb 17, 2022
85
14
13
41
Nach dem letzten Update von heute, gehen plötzlich meine LXC Container mit Docker nicht mehr. Hat noch jemand das Problem?
Die LXC lässt sich starten, ich kann mich einloggen aber wenn ich docker ps eingebe ist alles leer.

Spiele ich ein Backup vom LXC von gestern zurück geht dieser leider auch nicht, heute Früh vor dem Update haben die Maschinen noch funktioniert.

Hilfe :(

PS: Soweit ich das sehe kann der Docker daemon nicht mehr gestartet werden, ich habe jetzt den kompletten Node restartet mit Kernel Version 5.15.74-1-pve x86_64), aber selbst damit geht es nicht mehr. Was ist da passiert?

PSS: Ok, Fehler eingegrenzt, da gab es wohl ein Update für Apparmor und seitdem lässt er Docker in den LXCs nicht mehr zu. Weiss jemand wie man das einstellt? Hab mich mit dem Teil leider bis dato noch nie beschäftigt
 
Last edited:
kann ich bestätigen: Docker in LXC down
Puh und ich dachte schon es lag an mir, aber es kam definitiv vom Update heute Früh aus, da stimmt etwas mit Apparmor nicht, weil wie ich dieses deaktivierte gingen die LXC wieder, sollte ja aber nicht Sinn der Sache sein.
 
welche pakete wurden denn auf dem system heute aktualisiert (/var/log/apt/history.log* gibt auskunft ;))
 
welche pakete wurden denn auf dem system heute aktualisiert (/var/log/apt/history.log* gibt auskunft ;))
Log sagt:

Start-Date: 2022-12-22 11:52:09
Commandline: apt-get dist-upgrade
Install: pve-kernel-5.15.83-1-pve:amd64 (5.15.83-1, automatic), pve-headers-5.15.83-1-pve:amd64 (5.15.83-1, automatic)
Upgrade: pve-firmware:amd64 (3.6-1, 3.6-2), zfs-zed:amd64 (2.1.6-pve1, 2.1.7-pve1), zfs-initramfs:amd64 (2.1.6-pve1, 2.1.7-pve1), spl:amd64 (2.1.6-pve1, 2.1.7-pve1), libnvpair3linux:amd64 (2.1.6-pve1, 2.1.7-pve1), libuutil3linux:amd64 (2.1.6-pve1, 2.1.7-pve1), libzpool5linux:amd64 (2.1.6-pve1, 2.1.7-pve1), qemu-server:amd64 (7.3-1, 7.3-2), libpve-access-control:amd64 (7.2-5, 7.3-1), pve-manager:amd64 (7.3-3, 7.3-4), pve-kernel-5.15:amd64 (7.2-14, 7.3-1), libzfs4linux:amd64 (2.1.6-pve1, 2.1.7-pve1), pve-headers-5.15:amd64 (7.2-14, 7.3-1), zfsutils-linux:amd64 (2.1.6-pve1, 2.1.7-pve1)
End-Date: 2022-12-22 11:53:04
 
Docker zeigt auch keine vorhandenen images / container mehr. Bin im Moment etwas ratlos

Code:
# docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.9.1-docker)
  compose: Docker Compose (Docker Inc., v2.14.1)
  scan: Docker Scan (Docker Inc., v0.23.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.22
 Storage Driver: overlay2
  Backing Filesystem: zfs
  Supports d_type: true
  Native Overlay Diff: false
  userxattr: true
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 9ba4b250366a5ddde94bb7c9d1def331423aa323
 runc version: v1.1.4-0-g5fd4c4d
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 5.15.83-1-pve
 Operating System: Ubuntu 22.04.1 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 8GiB
 Name: medienserver
 ID: K75D:3WPA:RJNR:HZOK:LZYP:GU73:WBPR:4BM4:USEO:K7GB:DJSZ:KEF6
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
 
Docker zeigt auch keine vorhandenen images / container mehr. Bin im Moment etwas ratlos

Code:
# docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.9.1-docker)
  compose: Docker Compose (Docker Inc., v2.14.1)
  scan: Docker Scan (Docker Inc., v0.23.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.22
 Storage Driver: overlay2
  Backing Filesystem: zfs
  Supports d_type: true
  Native Overlay Diff: false
  userxattr: true
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 9ba4b250366a5ddde94bb7c9d1def331423aa323
 runc version: v1.1.4-0-g5fd4c4d
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 5.15.83-1-pve
 Operating System: Ubuntu 22.04.1 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 8GiB
 Name: medienserver
 ID: K75D:3WPA:RJNR:HZOK:LZYP:GU73:WBPR:4BM4:USEO:K7GB:DJSZ:KEF6
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Deaktiver am Host apparmor, dann gehts wieder. Ist zwar ned Sinn der Sache, aber bis zur Lösung sollte das helfen
 
am host sollte im journal von apparmor gelogged werden, was verweigert wird. eventuell hilft das beim eingrenzen - bitte von container start weg alle journal meldungen kopieren und hier in code tags posten, sowie die container config und pveversion -v ausgabe.
 
am host sollte im journal von apparmor gelogged werden, was verweigert wird. eventuell hilft das beim eingrenzen - bitte von container start weg alle journal meldungen kopieren und hier in code tags posten, sowie die container config und pveversion -v ausgabe.

Logauszug aus dem Logfile vom Host bezüglich apparmor:

Code:
Dec 22 12:46:51 host1 kernel: [   92.281945] audit: type=1400 audit(1671709611.623:62): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-302_</var/lib/lxc>//&:lxc-302_<-var-lib-lxc>:unconfined" pid=96841 comm="apparmor_parser"
Dec 22 12:46:51 host1 kernel: [   92.282374] audit: type=1400 audit(1671709611.623:63): apparmor="DENIED" operation="mount" info="failed perms check" error=-13 profile="lxc-302_</var/lib/lxc>" name="/run/systemd/unit-root/" pid=96855 comm="(resolved)" srcname="/" flags="rw, rbind"
Dec 22 12:46:51 host1 kernel: [   92.290331] audit: type=1400 audit(1671709611.631:64): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-302_</var/lib/lxc>//&:lxc-302_<-var-lib-lxc>:unconfined" pid=96839 comm="apparmor_parser"
Dec 22 12:46:51 host1 kernel: [   92.290358] audit: type=1400 audit(1671709611.631:65): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-302_</var/lib/lxc>//&:lxc-302_<-var-lib-lxc>:unconfined" pid=96839 comm="apparmor_parser"
Dec 22 12:46:51 host1 kernel: [   92.329061] audit: type=1400 audit(1671709611.667:66): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-302_</var/lib/lxc>//&:lxc-302_<-var-lib-lxc>:unconfined" pid=96838 comm="apparmor_parser"
Dec 22 12:46:51 host1 kernel: [   92.354893] audit: type=1400 audit(1671709611.695:67): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-302_</var/lib/lxc>//&:lxc-302_<-var-lib-lxc>:unconfined" pid=96842 comm="apparmor_parser"
Dec 22 12:46:51 host1 kernel: [   92.415386] audit: type=1400 audit(1671709611.755:68): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-302_</var/lib/lxc>//&:lxc-302_<-var-lib-lxc>:unconfined" pid=96840 comm="apparmor_parser"

Dec 22 12:48:18 host1 kernel: [  179.482081] audit: type=1400 audit(1671709698.821:83): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-304_</var/lib/lxc>//&:lxc-304_<-var-lib-lxc>:unconfined" pid=113416 comm="apparmor_parser"
Dec 22 12:48:18 host1 kernel: [  179.492599] audit: type=1400 audit(1671709698.833:84): apparmor="DENIED" operation="mount" info="failed perms check" error=-13 profile="lxc-304_</var/lib/lxc>" name="/run/systemd/unit-root/" pid=113439 comm="(resolved)" srcname="/" flags="rw, rbind"
Dec 22 12:48:18 host1 kernel: [  179.530510] audit: type=1400 audit(1671709698.869:85): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-304_</var/lib/lxc>//&:lxc-304_<-var-lib-lxc>:unconfined" pid=113436 comm="apparmor_parser"
Dec 22 12:48:18 host1 kernel: [  179.551076] audit: type=1400 audit(1671709698.889:86): apparmor="STATUS" operation="profile_replace" info="not policy admin" error=-13 label="lxc-304_</var/lib/lxc>//&:lxc-304_<-var-lib-lxc>:unconfined" pid=113415 comm="apparmor_parser"

Auszug pveversion -v

Code:
root@host1:~# pveversion -v
proxmox-ve: 7.3-1 (running kernel: 5.15.74-1-pve)
pve-manager: 7.3-4 (running version: 7.3-4/d69b70d4)
pve-kernel-5.15: 7.3-1
pve-kernel-helper: 7.3-1
pve-kernel-5.13: 7.1-9
pve-kernel-5.15.83-1-pve: 5.15.83-1
pve-kernel-5.15.74-1-pve: 5.15.74-1
pve-kernel-5.13.19-6-pve: 5.13.19-15
pve-kernel-5.13.19-2-pve: 5.13.19-4
ceph-fuse: 15.2.15-pve1
corosync: 3.1.7-pve1
criu: 3.15-1+pve-1
glusterfs-client: 9.2-1
ifupdown2: 3.1.0-1+pmx3
ksm-control-daemon: 1.4-1
libjs-extjs: 7.0.0-1
libknet1: 1.24-pve2
libproxmox-acme-perl: 1.4.3
libproxmox-backup-qemu0: 1.3.1-1
libpve-access-control: 7.3-1
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.3-1
libpve-guest-common-perl: 4.2-3
libpve-http-server-perl: 4.1-5
libpve-storage-perl: 7.3-1
libspice-server1: 0.14.3-2.1
lvm2: 2.03.11-2.1
lxc-pve: 5.0.0-3
lxcfs: 4.0.12-pve1
novnc-pve: 1.3.0-3
proxmox-backup-client: 2.3.1-1
proxmox-backup-file-restore: 2.3.1-1
proxmox-mini-journalreader: 1.3-1
proxmox-offline-mirror-helper: 0.5.0-1
proxmox-widget-toolkit: 3.5.3
pve-cluster: 7.3-1
pve-container: 4.4-2
pve-docs: 7.3-1
pve-edk2-firmware: 3.20220526-1
pve-firewall: 4.2-7
pve-firmware: 3.6-2
pve-ha-manager: 3.5.1
pve-i18n: 2.8-1
pve-qemu-kvm: 7.1.0-4
pve-xtermjs: 4.16.0-1
qemu-server: 7.3-2
smartmontools: 7.2-pve3
spiceterm: 3.2-2
swtpm: 0.8.0~bpo11+2
vncterm: 1.7-1
zfsutils-linux: 2.1.7-pve1

NIcht wundern wegen dem Kernel, ich bin mit der vorhergehenden Version am Arbeiten jetzt weil ich dachte es liegt daran.
 
Last edited:
Deaktiver am Host apparmor, dann gehts wieder. Ist zwar ned Sinn der Sache, aber bis zur Lösung sollte das helfen
wie hast Du Apparmor deaktiviert? Ich habe die LXC Conf Dateien ergänzt, sogar komplett neu gestartet, aber bezüglich Docker keine Änderung.

To disable AppArmor for a container, add the following line to the container configuration file located at /etc/pve/lxc/CTID.conf:
lxc.apparmor.profile = unconfined
 
wie hast Du Apparmor deaktiviert? Ich habe die LXC Conf Dateien ergänzt, sogar komplett neu gestartet, aber bezüglich Docker keine Änderung.

To disable AppArmor for a container, add the following line to the container configuration file located at /etc/pve/lxc/CTID.conf:
lxc.apparmor.profile = unconfined

Direkt am Host in der Shell: systemctl disable apparmor
 
Direkt am Host in der Shell: systemctl disable apparmor
Im Container zu deaktivieren hilft nämlich nicht. Docker Info zeigt apparmor nicht mehr wie noch zuletzt.


Code:
# docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.8.2-docker)
  scan: Docker Scan (Docker Inc., v0.17.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.17
 Storage Driver: overlay2
  Backing Filesystem: zfs
  Supports d_type: true
  Native Overlay Diff: false
  userxattr: true
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc version: v1.1.2-0-ga916309
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 6.1.0-1-pve
 Operating System: Ubuntu 22.04.1 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 8GiB
 Name: paperless
 ID: Q3ZK:DIGE:2P52:VD4V:6IHD:W5QR:R6XZ:2HDM:2D3E:RC36:H5SN:LAIU
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
 
Im Container zu deaktivieren hilft nämlich nicht. Docker Info zeigt apparmor nicht mehr wie noch zuletzt.


Code:
# docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.8.2-docker)
  scan: Docker Scan (Docker Inc., v0.17.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.17
 Storage Driver: overlay2
  Backing Filesystem: zfs
  Supports d_type: true
  Native Overlay Diff: false
  userxattr: true
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 10c12954828e7c7c9b6e0ea9b0c02b01407d3ae1
 runc version: v1.1.2-0-ga916309
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 6.1.0-1-pve
 Operating System: Ubuntu 22.04.1 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 8GiB
 Name: paperless
 ID: Q3ZK:DIGE:2P52:VD4V:6IHD:W5QR:R6XZ:2HDM:2D3E:RC36:H5SN:LAIU
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false
ich habe jetzt über die Shell apparmor deaktiviert und das System neu gestartet - Docker läuft aber trotzdem nicht in den Containern. Leider für mich keine temporäre Lösung.
 
ich habe jetzt über die Shell apparmor deaktiviert und das System neu gestartet - Docker läuft aber trotzdem nicht in den Containern. Leider für mich keine temporäre Lösung.

Hab mir das jetzt nochmal genau angesehen, es liegt definitiv am neuen Kernel mit Apparmor,

Update: Nach dem aktuellen Durchstarten gehen jetzt auch bei mir alle LXC mit Docker nicht mehr, trotz deaktivierten Apparmor. Was hats da denn?

Code:
root@Portainer:~# docker ps
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
root@Portainer:~# systemctl status docker
x docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Thu 2022-12-22 14:29:06 UTC; 1min 18s ago
TriggeredBy: x docker.socket
       Docs: https://docs.docker.com
    Process: 336 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)
   Main PID: 336 (code=exited, status=1/FAILURE)
        CPU: 29ms

Dec 22 14:29:06 Portainer systemd[1]: docker.service: Scheduled restart job, restart counter is at 3.
Dec 22 14:29:06 Portainer systemd[1]: Stopped Docker Application Container Engine.
Dec 22 14:29:06 Portainer systemd[1]: docker.service: Start request repeated too quickly.
Dec 22 14:29:06 Portainer systemd[1]: docker.service: Failed with result 'exit-code'.
Dec 22 14:29:06 Portainer systemd[1]: Failed to start Docker Application Container Engine.
 
Last edited:
Guten Morgen

Ich hab meinen Server einmal restartet und auf die aktuelle Kernel Version 5.15.83.1 hochgefahren. Zum Testen wollte ich einen neuen Container erstellen und dort frisch Docker installieren. Aber den neuen Container kann ich nicht mal starten.

Folgende Fehlermeldung bekomme beim Start des Containers:

Code:
()
apparmor_prepare: 1079 Cannot use generated profile: apparmor_parser not available
lxc_init: 879 Failed to initialize LSM
__lxc_start: 2008 Failed to initialize container "310"
TASK ERROR: startup for container '310' failed

Ich fürchte fast da ist mit dem Update was passiert, kann sich das bitte jemand dringend ansehen?
 
@harry1983 deine letzte fehlermeldung kommt daher, dass du apparmor disabled (das bedeutet ja nur, beim naechsten boot nicht starten!) und dann rebootet (jetzt wirds erst aktiv) hast. diese konfig wird nicht supported, wenn du einen container ohne apparmor containment laufen lassen willst, bitte auf unconfined stellen (aber das ist nicht zu empfehlen, da damit ein ausbruch aus dem container sehr viel einfacher gemacht wird).

ich wiederhole meine bitte - container config posten!
 
gerade nochmal getestet - debian 11 container auf PVE mit aktuellem upgrade inkl. kernel 5.15.83 - docker.io paket installiert, dockerd startet problemlos (mehr hab ich nicht getestet - wie @Neobin oben gepostet hat, ist docker in LXC keine gute idee..)
 
gerade nochmal getestet - debian 11 container auf PVE mit aktuellem upgrade inkl. kernel 5.15.83 - docker.io paket installiert, dockerd startet problemlos (mehr hab ich nicht getestet - wie @Neobin oben gepostet hat, ist docker in LXC keine gute idee..)

Ich habs jetzt radikal gelöst und eine Neuinstallation vom Host gemacht (vorher die Configs gesichert), war eh schnell erledigt, allerdings trau ich mich nicht das gestrige Update nochmals einspielen :/
 

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!