2015-04-09 14 views

Trả lời

23

Bạn có thể khởi động lại bằng tay bằng cách sử dụng lệnh sau

bundle exec pumactl -P /home/deploy/.pids/puma.pid restart 

Hãy chắc chắn rằng bạn trỏ đến con đường pid đúng.

+0

Tôi có cần một công việc với lệnh này sau khi được công bố? – mystdeim

+0

Phụ thuộc vào cách bạn triển khai ứng dụng của mình. Sử dụng capistrano, bạn có thể viết các nhiệm vụ cho nó và bao gồm chúng trong quá trình triển khai của bạn, hoặc sử dụng một cái gì đó như thần http://godrb.com/ mà bạn cũng có thể tích hợp với capistrano – JamesDullaghan

2

Theo tôi biết, nếu bạn đang sử dụng đá quý capistrano3-puma, bạn không cần phải khởi động lại puma một cách rõ ràng sau khi triển khai. Có một nhiệm vụ add_default_hooks thực hiện puma:smart_restart sau khi triển khai.

Bạn có thể xem danh sách công việc theo số cap -vT. Tôi nghĩ rằng cap puma:restart sẽ thực hiện công việc.

+0

Nếu bạn thêm 'install_plugin Capistrano :: Puma, load_hooks: true' vào 'Capfile' của bạn, bạn sẽ ổn thôi. –

0

bạn có thể kiểm tra xem Puma đang chạy hay không bằng lệnh

ps aux | grep puma

từ đó tìm tên ứng dụng của bạn, và giết mà bởi kill -9 id

sau đó bạn có thể bắt đầu lại

16

Sản

Nếu bạn đang sử dụng capistrano về sản xuất, bạn có thể:

cap production deploy:restart 

Phát triển

Nếu bạn đang ở trên một môi trường phát triển, bạn có thể bắt đầu tìm kiếm các pid

ps aux | grep puma 

Bạn sẽ thấy một cái gì đó như thế này:

user 11654 0.0 13.4 870204 137016 ?  Sl Jul07 0:39 puma 2.13.4 (tcp://0.0.0.0:3000) [NameOfYourApp] 

Số bên cạnh tên người dùng, trong trường hợp này 11654 là id quá trình (PID) của máy chủ puma. Bạn có thể giết nó bằng tay và khởi động lại máy chủ sau. Chạy lệnh này:

kill -s 15 11654 

Lệnh này đang nói giết chết quá trình với id 11.654 sử dụng tín hiệu SIGTERM (mã 15). SIGTERM giết chết quá trình 'tử tế' đóng cửa tất cả các file, kết nối, đệm làm sạch vv

cuối bạn chạy lệnh này:

puma -e development -p 3000 -d 

Puma sẽ được bắt đầu lại trong chế độ phát triển, lắng nghe trên cổng 3000 và thực hiện sẽ bị demonized.

5

Tôi gặp vấn đề nơi tôi cần khởi động lại puma sau khi một số thay đổi môi trường và không muốn triển khai đầy đủ ứng dụng.

Tôi chỉ muốn khởi động lại puma và nginx. Dưới đây là các lệnh mà làm việc cho tôi:

$ bundle exec cap production deploy:restart 
$ bundle exec cap production puma:restart 

Hy vọng rằng sẽ giúp người

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