Tôi thực sự thích sử dụng mới nổi. Tôi hiện đang có các công việc mới nổi để chạy các cá thể gunicorn khác nhau trong một số virtualenv. Tuy nhiên, 2-3 ví dụ tôi tìm thấy cho các kịch bản Celery mới nổi trên mạng nội bộ không hoạt động đối với tôi.Làm thế nào để viết một công việc Upstart Ubuntu cho cần tây (django-cần tây) trong một virtualenv
Vì vậy, với các biến sau, tôi sẽ viết công việc Upstart để chạy django-cần tây trong virtualenv như thế nào.
Đường dẫn đến dự án Django:
/srv/projects/django_project
Đường dẫn đến virtualenv của dự án này:
/srv/environments/django_project
Đường dẫn đến các thiết lập cần tây là Django thiết lập dự án tập tin (django-cần tây):
/srv/projects/django_project/settings.py
Đường dẫn đến tệp nhật ký cho trường hợp Celery này:
/srv/logs/celery.log
Đối env ảo này, người dùng:
iamtheuser
và nhóm:
www-data
Tôi muốn chạy Cần tây Daemon với celerybeat, vì vậy, lệnh Tôi muốn vượt qua đến django-admin.py (hoặc manage.py) là:
python manage.py celeryd -B
Nó sẽ là e tốt hơn nếu kịch bản bắt đầu sau khi công việc gunicorn bắt đầu, và dừng lại khi công việc gunicorn dừng lại. Hãy nói rằng các tập tin cho điều đó là:
/etc/init/gunicorn.conf
Tuyệt vời, tôi đã tinh chỉnh điều này và nó đang hoạt động. – pwalsh
có thể là tốt đẹp để thêm tinh chỉnh của bạn ... Tôi đăng của tôi ở đây: http://stackoverflow.com/questions/14275821/how-to-run-celery-as-a-deamon-in-production/16470913#16470913 –