2015-05-14 19 views
19

Tôi đã tự hỏi nếu nó có thể cài đặt và chạy Docker trong Ubuntu 14.04 USB Live-Disk.Chạy docker trong ubuntu đĩa sống

Tôi đang cố gắng nó với một 8GB USB, 4 GB để cài đặt và 4 GB để lưu trữ tiếp tục tồn tại, nhưng tôi tiếp tục nhận được các lỗi khi chạy container (không có vấn đề trong cách kéo chúng).

Đây là phiên bản Docker tôi:

$ sudo docker version 
Client version: 1.6.2 
Client API version: 1.18 
Go version (client): go1.4.2 
Git commit (client): 7c8fca2 
OS/Arch (client): linux/amd64 
Server version: 1.6.2 
Server API version: 1.18 
Go version (server): go1.4.2 
Git commit (server): 7c8fca2 
OS/Arch (server): linux/amd64 

Và các lỗi hiện tại tôi nhận được khi chạy một container Docker là:

[8] System error: mountpoint for cpu not found 

OBS: Đôi khi lỗi là cpuset hoặc không tìm thấy thiết bị .

Nhân hạt live-đĩa mà tôi đang sử dụng là:

$ uname -r 
3.13.0-32-generic 

Nếu Ubuntu live đĩa không phải là tốt nhất live-đĩa để chạy Docker, đang có bất kỳ lựa chọn thay thế khác mà có một số GUI với nó, không chỉ là một thiết bị đầu cuối đơn giản để chạy docker?

Tôi đang nói điều này bởi vì tôi đang cố gắng giới thiệu Docker với bố mẹ tôi, nhưng họ không muốn cài đặt một linux trong máy tính của họ, và vì vậy tôi cần một số giao diện đồ họa đơn giản để ghi lại Dockerfile một trình duyệt, vv ...


CẬP NHẬT

tôi thấy rằng trong khi cài đặt có một lỗi khi thiết lập phụ thuộc cgroup-lite initctl: Unknown job: cgroup-lite. Ngoài ra tôi đọc rằng một số ubuntu cần phải cài đặt apparmor để cài đặt trình docker hoạt động đúng cách.

Vì vậy, tôi cài đặt nó và cài đặt lại Docker (cgroup-lite cài đặt với không có vấn đề rồi), và bây giờ tôi nhận được điều này khi chạy sudo docker -d

INFO[0000] +job serveapi(unix:///var/run/docker.sock) 
INFO[0000] Listening for HTTP on unix (/var/run/docker.sock) 
INFO[0000] +job init_networkdriver()      
INFO[0000] -job init_networkdriver() = OK (0)   
WARN[0004] Your kernel does not support cgroup swap limit. 
INFO[0004] Loading containers: start.     
...... 
INFO[0004] Loading containers: done.      
INFO[0004] docker daemon: 1.6.2 7c8fca2; execdriver: native-0.2; graphdriver: aufs 
INFO[0004] +job acceptconnections()      
INFO[0004] -job acceptconnections() = OK (0)    
INFO[0004] Daemon has completed initialization 

Và khi cố gắng chạy một container Tôi nhận>

ERRO[0125] HTTP Error: statusCode=500 Cannot start container 90875e79dec37cec41a67aac235b81f0fc17c4e011cd6e5368a4b29336587f5b: 
[8] System error: permission denied 

Không chắc chắn về hạt nhân không hỗ trợ cgroup, nhưng nếu có, thì có thể cập nhật hạt nhân trong chế độ chờ (vẫn tồn tại) không?

+0

Bạn đã thấy điều này: https://github.com/docker/docker/issues/7993? –

+0

Đúng, đã dùng thử nhưng đó không phải là vấn đề =/ – Arruda

+0

Bạn có thể kiểm tra https://github.com/docker/docker/issues/9745#issuecomment-73732245 không? 'sudo apt-get install apparmor' – VonC

Trả lời

9

tôi đã quản lý để thực hiện công việc này bằng cách thay đổi lưu trữ Docker để devicemapper thay vì AUFS.

Về cơ bản chỉ đã phải thay đổi /etc/default/docker để có điều này trong đó:

DOCKER_OPTS="--storage-driver=devicemapper" 

Tôi đã quản lý để làm cho container chạy ok với điều này, nhưng tôi thích sử dụng AUFS.

Tôi nhận ra rằng phân vùng không sử dụng auf theo mặc định, nhưng giống như caw hoặc cow (không thể nhớ bây giờ).

Tôi cũng đã cố gắng để làm cho nó hoạt động bằng cách sử dụng AUFS union=aufs cờ trong grub, nhưng khi chạy daemon Docker tôi nhận được một FATA[0000] Shutting down daemon due to errors: error intializing graphdriver: backing file system is unsupported for this graph driver, trông có liên quan đến https://github.com/docker/docker/issues/7321

Tôi sẽ để lại câu trả lời của tôi ở đây, vì nó là một giải pháp cho vấn đề này, nhưng nếu bất cứ ai quản lý để thực hiện công việc này bằng cách sử dụng AUFS nó sẽ là, theo ý kiến ​​của tôi, một câu trả lời tốt hơn.

4

Bạn muốn báo cho trình gỡ rối Docker lưu trữ dữ liệu liên quan đến vùng chứa của bạn trên bộ nhớ liên tục.

Theo mặc định, trình nền của docker đặt những dữ liệu đó vào /var/lib/docker. Bạn có thể thay đổi vị trí đó với các --graph docker daemon option

+0

Trên thực tế, phân vùng gốc trong đĩa trực tiếp đã tồn tại (tôi khởi động nó sẽ thiết lập cờ 'persistent' trong grub). Tôi biết rằng bởi vì bất kỳ thay đổi nào trong/var/lib/docker được lưu lại (nếu tôi kéo hình ảnh ở đó khi tôi khởi động lại hoặc nếu tôi thay đổi tùy chọn '/ etc/default/docker' thì nó vẫn tồn tại. – Arruda

Các vấn đề liên quan