2012-05-26 38 views
16

tôi có một dự án Rails mới và tôi quyết định từ bỏ Heroku thử, triển khai có vẻ rất dễ dàng cóPhát triển trên cửa sổ, chạy lân trong sản xuất trên Heroku

Tôi đang phát triển trên cửa sổ, vì vậy chạy lân không phải là một lựa chọn , nhưng webrick là tốt cho sự phát triển

nHƯNG, khi nó đến triển khai, tôi muốn sử dụng lân, và Heroku hoàn hảo hỗ trợ này

vấn đề là: tôi phải liệt kê lân trên Gemfile của tôi để cho Heroku để chọn nó, nhưng khi tôi làm điều đó và chạy lệnh bó (hoặc rails s) trên máy dev cửa sổ của tôi, nó sẽ cố gắng cài đặt serv unicorn er

tôi đã cố gắng để đặt kỳ lân trong nhóm sản xuất, nhóm: sản xuất làm đá quý 'lân' cuối vẫn bó phàn nàn và tôi không thể chạy các máy chủ dev

Trả lời

41

Bạn có thể nhắm mục tiêu nền tảng cụ thể trong Gemfile của bạn :

platforms :ruby do # linux 
    gem 'unicorn' 
end 

platforms :mswin do 
    # gems specific to windows 
end 

xem manpages for gemfile để biết thêm thông tin.

+0

Cảm ơn rất nhiều, điều này đã làm việc cho tôi – Joseph

+0

Làm việc cho tôi! – Emerson

16

Các giải pháp thay thế (mà các poster ban đầu đã rất gần) là

group :production do 
    gem 'unicorn' 
end 

và sau đó sử dụng

bundle install --without production 

trên máy tính Windows của bạn.

Heroku sidenote (không kiểm tra)

Không giống như các câu trả lời được chấp nhận, điều này không nên gây Heroku để bỏ qua của bạn Gemfile.lock

Điều này là do Heroku kiểm tra Gemfile của bạn cho mswinmingw khi quyết định nếu nó là Windows được tạo ra hay không.

+0

Windows 7: 'gem 'unicorn', group:: production' cho tôi lỗi khi cài đặt' kgio'while 'gem 'unicorn', platform:: ruby' thì không. – Matthias

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