Ruby on Rails

Triển khai & Sản xuất

Capistrano, Docker, Heroku, AWS, database.yml, credentials.yml.enc, precompile assets, triển khai không downtime

20 câu hỏi phỏng vấn·
Senior
1

Nên sử dụng lệnh nào để precompile assets của Rails trước khi triển khai lên production?

Câu trả lời

Lệnh rails assets:precompile biên dịch tất cả assets (JavaScript, CSS, hình ảnh) thành các file đã được tối ưu với fingerprinting để cache busting. Bước này là thiết yếu trước bất kỳ lần triển khai production nào nhằm đảm bảo assets sẵn sàng được phục vụ hiệu quả. Biến RAILS_ENV=production đảm bảo quá trình biên dịch sử dụng cấu hình production.

2

Rails 7+ lưu trữ credentials được mã hóa cho production trong file nào?

Câu trả lời

Rails 7+ sử dụng config/credentials.yml.enc để lưu trữ secrets dưới dạng mã hóa. File này có thể được commit vào repository vì nó được mã hóa bằng master key. Đối với các môi trường cụ thể, Rails cũng hỗ trợ config/credentials/production.yml.enc với khóa giải mã riêng của nó.

3

Vai trò chính của Capistrano trong quy trình deployment Rails là gì?

Câu trả lời

Capistrano là một công cụ tự động hóa deployment thực thi các lệnh trên máy chủ từ xa thông qua SSH. Nó quản lý các release bằng hệ thống symlink cho phép rollback tức thì, chạy migration, precompile asset và khởi động lại các máy chủ ứng dụng. Cách tiếp cận dựa trên các release được đánh phiên bản giúp đơn giản hóa việc quản lý deployment.

4

Làm thế nào để truy cập một credential được lưu trong credentials.yml.enc từ code Rails?

5

Cấu hình nào trong database.yml cho phép quản lý nhiều read replica cho môi trường production?

+17 câu hỏi phỏng vấn

Nắm vững Ruby on Rails cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí