Cách giải quyết cho docker đặc quyền lồng nhau LXD (lỗi /dev/.lxc/proc/) là gì?


8

Việc khởi chạy một container docker đặc quyền trong LXD không thành công với điều này:

docker: Error response from daemon: linux runtime spec devices: lstat /dev/.lxc/proc/1482/fdinfo/12: no such file or directory.

Các bước để tái sản xuất:

lxc launch ubuntu-daily:16.04 docker -p default -p docker
lxc exec docker -- apt install docker.io -y
lxc exec docker bash
sudo curl -L git.io/scope -o /usr/local/bin/scope
sudo chmod a+x /usr/local/bin/scope
scope launch

Hướng dẫn gốc: LXD 2.0: Docker trong LXD

Báo cáo lỗi: Các container Docker bị lỗi trong thư mục /dev/.lxc/proc # 2825 - GitHub

Làm thế nào để làm cho nó hoạt động?


Hướng dẫn mà bạn liên kết nói rằng bạn cần A Docker image which behaves when confined by user namespaces, or alternatively make the parent LXD container a privileged container (security.privileged=true). Có thể vấn đề là với scope? Bạn có thể chạy lxc exec docker -- docker run --detach --name app carinamarina/hello-world-app, hoặc cách khác, nó có hoạt động trong một thùng chứa đặc quyền không?
Jonathan Y.

LXD là một container đặc quyền (hồ sơ LXD của 'docker' security.privileged=true). Tôi đã thử một số hello-worldhình ảnh trong một LXD đặc quyền - cùng một vấn đề. Không có cấu hình này nữa, chuyển sang KVM.
Velkan

Câu trả lời:


0

Per Stephane Graber (nhà phát triển chính của LXD) bạn không cần hồ sơ docker LXD nữa!

Xem tại https://github.com/lxc/lxd/issues/3299


Vui lòng cố gắng luôn cung cấp số phiên bản kể từ khi được sửa. Luôn luôn bực bội khi sao chép repos, tìm kiếm cam kết và bản phát hành tiếp theo sau nó.
Velkan

0

Chỉ cần làm sạch điều này một chút, điều này được giải quyết khá độc đáo (như @bmullan chỉ ra).

16.04, lxd phiên bản 2.21, trình tự sau hoạt động:

lxc launch ubuntu-daily:xenial xenial
lxc config set xenial security.nesting true
lxc exec xenial snap install docker
lxc exec xenial docker run ubuntu ls

Các docker.iogói và dockerchụp cả hai việc, nhưng là phiên bản khác nhau, và có những chính sách cập nhật khác nhau, vv Phiên bản Snap sử dụng ở trên là 17.06.2-ce, trong khi gói docker.io trong xenial là 1.13.1.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.