2015-11-24 25 views
6

Tôi đang cố gắng xây dựng một vùng chứa dữ liệu cho ứng dụng của tôi trong Docker. Tôi chạy lệnh này để lộ một số khối lượng:Docker - không thể mount volume trên file hiện tại, file tồn tại

docker run --name svenv.nl-data -v /etc/environment -v /etc/ssl/certs -v /var/lib/mysql -d svenv/svenv.nl-data 

Vấn đề là tôi nhận được lỗi này từ lệnh này:

Error response from daemon: cannot mount volume over existing file, file exists /var/lib/docker/aufs/mnt/aefa66cf55357e2e1e4f84c2d4d2d03fa2375c8900fe3c0e1e6bc02f13e54d05/etc/environment 

Nếu tôi hiểu các tài liệu Docker một cách chính xác. Tạo tập cho các tệp đơn lẻ được hỗ trợ. Vì vậy, tôi không hiểu tại sao tôi nhận được lỗi này.

Có ai đó có thể giải thích điều này cho tôi không? Tôi đang chạy Docker 1.9.1 trên Ubuntu 14.04.

+0

bạn đã giải quyết nó theo một cách nào đó chưa? – Robert

+0

Không thể ghi đè một số tập tin bằng docker irrc. Nó nghĩ/etc/môi trường được bảo lưu. –

Trả lời

0

Tôi đoán vì bạn không gắn tệp nhưng thay vào đó tuyên bố gắn kết. Hãy thử ký hiệu này thay vì: -v <full path to a file you want to overwrite the target with>:/etc/environment

+1

Tôi không muốn ghi đè tệp bằng một tệp khác. Những gì tôi đang cố gắng đạt được là đánh dấu/etc/environment là volume để nó có thể được sử dụng bởi một container khác bằng cách sử dụng --volumes-from. Điều này thậm chí có thể? –

3

Bạn shoud sử dụng

-v /etc/environment:/etc/environment 

thay vì

-v /etc/environment 

Cựu khối lượng bản đồ chứa với số lượng máy chủ. Cách thứ hai cố tạo một ổ đĩa mới tại/etc/environment và không thành công vì thư mục này đã tồn tại

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