tea
@tea

Как вернуть жизнь Docker после неудачного восстановления lxc-контейнера?

В lxc-контейнере под proxmox жил docker (в компании с composer и portainer). В один прекрасный момент, в контейнере, по рутом, я пропустил точку в команде chown www-data:www-data ./
Т.к. были свежие резервные копии lxc контейнера, я решил не заморачиваться, а восстановить вчерашнюю копию контейнера. Все восстановилось без ошибок, за исключением того, что ни один контейнер docker не запускается. При попытке запустить получаю ошибку вида:
ERROR: for portainer Cannot start service portainer: OCI runtime create failed: container_linux.go:345: starting container process caused "process_linux.go:424: container init caused \"rootfs_linux.go:46: preparing rootfs caused \\\"permission denied\\\"\"": unknown
ERROR: Encountered errors while bringing up the project.

Т.к. с docker я лишь начинаю свой путь (пол года играюсь) то я не очень понимаю, что пошло не так. Беглый гуглинг не дал ни какого результата. Прошу помощи.
  • Вопрос задан
  • 539 просмотров
Решения вопроса 1
tea
@tea Автор вопроса
Немного дополнительной информации:
pve-хост:
~# uname -a
Linux pve 4.15.18-12-pve #1 SMP PVE 4.15.18-35 (Wed, 13 Mar 2019 08:24:42 +0100) x86_64 GNU/Linux


Docker
# docker version
Client:
Version: 18.09.5
API version: 1.39
Go version: go1.10.8
Git commit: e8ff056dbc
Built: Thu Apr 11 04:44:28 2019
OS/Arch: linux/amd64
Experimental: false

Server: Docker Engine - Community
Engine:
Version: 18.09.5
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: e8ff056
Built: Thu Apr 11 04:10:53 2019
OS/Arch: linux/amd64
Experimental: false


# docker info
Containers: 17
Running: 0
Paused: 0
Stopped: 17
Images: 68
Server Version: 18.09.5
Storage Driver: vfs
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: bb71b10fd8f58240ca47fbb579b9d1028eea7c84
runc version: 2b18fe1d885ee5083ef9f0838fee39b62d653e30
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 4.15.18-12-pve
Operating System: Debian GNU/Linux 9 (stretch)
OSType: linux
Architecture: x86_64
CPUs: 3
Total Memory: 2GiB
Name: docker
ID: LC4T:QSQF:BT6R:T24L:Q5YS:6HBF:TJ3H:5EI7:WICK:TBIW:LOPE:O5ZS
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine



Все оказалось просто: при восстановлении lxc-контейнера почему-то слетели настройки этого контейнера и он оказался без привилегий для запуска docker внутри lxc.
Вновь добавил нужные настройки в conf и все заработало.
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
Зачем?
Докер статья элементарно да и к тому же лучше на квм
Поставьте с нуля и запустите
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы