2016-11-26 19 views
9

Tôi đang cố gắng để thiết lập Vagrant với Docker như một nhà cung cấp nhưng khi chạy"rsync" đã không được phát hiện như cài đặt trong máy khách của bạn

vagrant up --provider=docker --debug 

tôi nhận được lỗi này:

"rsync" was not detected as installed in your guest machine. This is required for rsync synced folders to work. In addition to this, Vagrant doesn't know how to automatically install rsync for your machine, so you must do this manually.

Full đăng nhập ở đây: http://pastebin.com/zCTSqibM

Vagrantfile

require 'yaml' 

Vagrant.configure("2") do |config| 

    user_config = YAML.load_file 'user_config.yml' 

    config.vm.provider "docker" do |d| 
    d.build_dir = "." 
    d.has_ssh = true 
    d.ports = user_config['port_mapping'] 
    d.create_args = ["--dns=127.0.0.1","--dns=8.8.8.8", "--dns=8.8.4.4"] 
    d.build_args = ['--no-cache=true'] end 

    config.vm.hostname = "dev" 

    config.ssh.username = "it" config.ssh.port = 22 config.ssh.private_key_path = ["./initial_ssh_key", user_config['ssh_private_key_path']] config.ssh.forward_agent = true 

end 

Dockerfile

FROM debian:jessie MAINTAINER IT <[email protected]> 

RUN echo 'exit 0' > /usr/sbin/policy-rc.d 

RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections 

RUN apt-get update RUN apt-get upgrade -y RUN apt-get install sudo apt-utils -y 

RUN apt-get -y install sysvinit-core sysvinit sysvinit-utils RUN cp /usr/share/sysvinit/inittab /etc/inittab RUN apt-get remove -y --purge 
--auto-remove systemd libpam-systemd systemd-sysv 

RUN apt-get install ssh -y 

RUN addgroup --system it RUN adduser --system --disabled-password 
--uid 1000 --shell /bin/bash --home /home/it it RUN adduser it it RUN adduser it sudo 

RUN echo "it ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers 

ADD initial_ssh_key.pub /home/it/.ssh/authorized_keys RUN chown it:it /home/it/ -R RUN echo "Host * \n\tStrictHostKeyChecking no" >> /etc/ssh/ssh_config 

CMD exec /sbin/init 

Lưu ý: Tôi đang trên Mac OS X 10.12 và tôi đã cài đặt lang thang, VirtualBox và Docker Tôi đã rsync cài đặt và thêm vào PATH của tôi trong máy chủ. Ngoài ra, cùng một cấu hình lang thang và docker hoạt động hoàn hảo trên một máy chủ ubuntu.

Làm cách nào để cài đặt rsync trong máy khách? Hoặc là cái gì khác sai với cấu hình của tôi? Bất kỳ ý tưởng?

+0

Tôi không thấy bạn phơi bày bất kỳ cổng nào trên đế cắm, hãy thử hiển thị '873' hoặc bất kỳ' rsync' nào đang sử dụng với 'd.expose = [873]' –

+0

vẫn là thông báo lỗi tương tự – Wissem

Trả lời

1

Bạn có thể muốn cung cấp cho các thay thế hộp boot2docker thử: https://github.com/dduportal/boot2docker-vagrant-box vì nó chứa rsync trong khi hashicorp/boot2docker, được sử dụng bởi mặc định , dường như thiếu điều này!

Nếu làm như vậy, bạn phải thêm dòng follwong đến nhà cung cấp Docker cấu hình của bạn (tất nhiên thông qua để hệ thống của bạn):

d.vagrant_vagrantfile = "../path/to/Vagrantfile"

này là bởi vì bạn đang thay đổi vm cung cấp Docker chủ như được mô tả trong vagrant docker provider documentation.

+0

cảm ơn! sử dụng hộp này dường như giải quyết vấn đề – Wissem

1

Hãy thử thêm rsync vào tệp Docker của bạn, ở một nơi trong số apt-get dòng của bạn. Các máy chủ Linux sử dụng NFS theo mặc định, đó là lý do tại sao nó hoạt động trên Ubuntu của bạn.

Thông thường Vagrant cố gắng cài đặt rsync trên máy khách, nếu không thành công - thông báo cho bạn biết thông báo lỗi đó. Thông tin thêm về vagrant website (đoạn thứ 3 trong "điều kiện tiên quyết" chương)

+0

Tôi đã thử nhưng dường như không hoạt động: đã thêm '' 'RUN apt-get install rsync -y'''in dockerfile, cùng một thông báo lỗi. Đã xảy ra sự cố với vagrant/vbox:/ – Wissem

+1

Không phải 'vbox' - bạn đang sử dụng' docker' làm nhà cung cấp: 'config.vm.provider" docker "' –

+0

bất kỳ ý tưởng nào tại sao nó không thành công? Tôi thấy điều này trong nhật ký ngay trước thông báo lỗi rsync: [mặc định] Phiên bản GuestAdditions trên máy chủ lưu trữ (5.0.16) và khách (4.3.28 r100309) không khớp. Nền tảng của khách ("linux") hiện không được hỗ trợ, sẽ thử phương pháp Linux chung ... Sao chép tệp iso /Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso vào hộp/tmp/VBoxGuestAdditions.iso Cài đặt Virtualbox Guest Additions 5.0.16 - phiên bản khách là 4.3.28 r100309 mkdir: không thể tạo thư mục '/ tmp/selfgz10164313': Không có tập tin hoặc thư mục nào như vậy – Wissem

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