Đầu tiên, một chút ngữ cảnh. Hầu hết các basebox Vagrant cài đặt Ruby để sử dụng bởi Chef và Puppet, nhưng những cái mới nhất làm điều này vào/opt/ruby hơn là sử dụng các gói hệ thống. Họ cũng thêm/opt/ruby / bin vào đường dẫn, nhưng cuối cùng.
mẫu VeeWee này cho thấy cách 10.04 hộp hiện đang được xây dựng: https://github.com/jedi4ever/veewee/blob/master/templates/ubuntu-10.04.3-server-i386/postinstall.sh
Đối với câu hỏi của bạn, họ là những bối cảnh khác nhau bạn có thể cố gắng để giải quyết, mỗi một giải pháp khác nhau. Hy vọng rằng một trong số đó sẽ là những gì bạn đang tìm kiếm.
Run Chef thức nấu ăn với 1.9.2
Bạn có thể muốn kiểm tra chạy công thức nấu ăn đầu bếp dưới 1.9.2 và bạn không muốn bất cứ nơi nào gần 1.8.7 hộp của bạn. Cách tốt nhất để tiếp cận điều này là tạo mẫu VeeWee của riêng bạn và tự xây dựng một basebox mới. Bạn có thể thay đổi một liên kết ở trên để biên dịch 1.9.2 thay vì 1.8.7 và làm theo các hướng dẫn trên https://github.com/jedi4ever/veewee
Phát triển với Ruby 1.9.2
Có lẽ nhiều khả năng là bạn muốn hack vào một số Mã Ruby sử dụng 1.9.2. Đối với điều này, bạn chỉ cần cài đặt Ruby và có các tệp nhị phân trên đường dẫn của bạn trước mục nhập/opt/ruby. Có một số cách để làm điều này:
Tất cả những có thể được quản lý sử dụng một công thức Chef. Tôi có lẽ không đi cho các tùy chọn biên dịch, để lại hoặc chỉ là một tải về thẳng và tài nguyên gói hoặc RVM cookbook sau đây có thể được tiện dụng http://community.opscode.com/cookbooks/rvm cho RVM.
Các * gem_binary * tùy chọn trên tài nguyên gói cũng có thể có ích ở đây tùy thuộc vào cách bạn muốn đảm bảo đá quý được cài đặt cho bạn mới 1.9.2 Ruby (chứ không phải là 1.8.7 quyền chọn tham gia)
Các Mục tiêu của knife bootstrap
là để có được Chef cài đặt trên hệ thống đích để nó có thể chạy Chef Client. Các baseboxes Vagrant có xu hướng đã có Chef cài đặt vì vậy trừ khi bạn đang làm một cái gì đó cụ thể và muốn chạy nhiều phiên bản của Chef tôi muốn tránh con đường này. Việc xây dựng trong cung cấp đầu bếp như http://vagrantup.com/docs/provisioners/chef_solo.html là một đặt cược tốt hơn.
tôi đã đi cho các tùy chọn gói, sử dụng gói 1.9.2 bạn liên kết đến, mặc dù tôi dường như thiếu một phụ thuộc (libffi5) vì vậy tôi cũng phải thêm nó vào công thức của mình. –