I am trying to port an application over to run on Heroku but ran into a snag. It's a Python3/Django application, and the web app (using gunicorn) runs properly. When I add a worker into my Procfile, it crashes with the message:
2016-01-13T16:40:07.985725+00:00 heroku[worker.1]: Starting process with command `celery -A app worker`
2016-01-13T16:40:08.664327+00:00 heroku[worker.1]: State changed from starting to up
2016-01-13T16:40:09.900924+00:00 app[worker.1]: bash: celery: command not found
2016-01-13T16:40:11.184762+00:00 heroku[worker.1]: Process exited with status 127
2016-01-13T16:40:11.196987+00:00 heroku[worker.1]: State changed from up to crashed
The requirements file includes celery:
celery==3.1.18
If the requirements were not being installed, the main app would fail to start.
Procfile:
web: gunicorn app.wsgi
worker: celery -A app worker
In the Heroku docs, they launch celery using the same Procfile command: https://devcenter.heroku.com/articles/celery-heroku#running-locally