2012-06-25 29 views
6

Tôi không quen thuộc với Capistrano, tôi chỉ đọc một số bài viết cơ bản về cấu hình nó. Nhưng câu hỏi của tôi là tại sao phải bận tâm với Capistrano nếu bạn có thể triển khai các tệp ứng dụng Rails của bạn bằng cách sử dụng một hook git post-receive?Rails lý do tại sao sử dụng capistrano khi bạn có git post-receive hook?

Capistrano cung cấp cái móc nào không?

Tôi đã xem xét các cách tự động triển khai ứng dụng Rails của mình mà không cần sử dụng FTP và đã gặp cả git hooks và Capistrano.

Hoặc tôi có thiếu gì đó không?

Cảm ơn.

+0

đã làm câu trả lời của tôi, trả lời bạn? – holaSenor

Trả lời

7

Git hooks cho phép bạn thực thi tập lệnh liên quan đến kho lưu trữ git trên một hành động cụ thể.

Capistrano cho phép bạn quản lý việc triển khai sản xuất của mình.

Một cuộc gọi duy nhất để 'triển khai giới hạn' sẽ nhân bản nhánh chính của bạn trên máy mục tiêu, lưu trữ bản phát hành trước, biên dịch trước tài sản của bạn, khởi động lại hành khách. Capistrano cũng có thể di chuyển cơ sở dữ liệu của bạn hoặc thực thi bất kỳ số lượng lệnh tùy ý nào mà bạn muốn trên bất kỳ máy chủ nào được định cấu hình trong tệp deploy.rb của bạn.

Đi kèm với Capistrano để triển khai vào môi trường máy chủ ứng dụng/db, bạn sẽ không gặp khó khăn khi tìm trợ giúp khi gặp sự cố triển khai.

+0

Cảm ơn, về cơ bản Capistrano cung cấp cho bạn một số tùy chọn khác như tiền biên dịch và khởi động lại hành khách. Tôi thấy rằng nó cũng cho phép bạn giữ các phiên bản ứng dụng của mình, điều đó khá thú vị. Câu hỏi khác: Có vẻ như bạn phải triển khai với các đá quý trong thư mục nhà cung cấp của bạn để Capistrano hoạt động. Có cách giải quyết nào để chạy gói cài đặt sau khi triển khai không? – kakubei

+0

Không, bạn sẽ cài đặt đá quý theo cách tương tự như trong phát triển, thêm vào gemfile, sau đó capistrano sẽ tự động chạy cài đặt gói trong sản xuất. Nó thực sự tuyệt vời, bạn sẽ được nhắc nhập mật khẩu khi cần thiết và bạn thấy toàn bộ triển khai sẽ di chuyển lên thiết bị đầu cuối. – holaSenor

+0

Capistrano cũng sẽ khôi phục triển khai cho bản phát hành cuối cùng nếu gặp sự cố. Vì vậy, bạn sẽ không được trái sẽ một nửa bị hỏng ứng dụng được cài đặt. – holaSenor

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