2013-09-07 134 views
9

Tôi đã đề cập đến trang web này khi tôi đang học python/bình và cố gắng sử dụng heroku.Khởi chạy ứng dụng trong heroku? Procfile là gì? 'web:' lệnh?

http://ryaneshea.com/lightweight-python-apps-with-flask-twitter-bootstrap-and-heroku

Hãy để tôi giải thích những gì tôi đã làm tất cả, để cho bất kỳ một người đang bị mắc kẹt như tôi có thể nhận được hình ảnh. Tôi đang sử dụng dòng lệnh Backtrack của Linux. 1. Tôi bắt đầu virtualenv và sau đó cài đặt bình virtualenv --distribute pip cài đặt bình

Heroku Sau đó, kết nối và github, tạo ra một repo cũng trong github. Đã viết một tập lệnh đơn giản và lưu nó trong app.py

Sau đó, được yêu cầu tạo một tập tin! web: python app.py

Câu hỏi. 1. procfile là gì? 2. Khi tôi gõ web: python app.py, nó nói 'web :: lệnh không tìm thấy'

Vui lòng giải thích cách hoạt động?

Tôi còn nghi ngờ nữa, sudo là người dùng tối cao phải không? Chúng tôi không được phép sử dụng nó trong virtualenv? Và đối với những gì chính xác là chúng tôi sử dụng virtualenv? Một ví dụ đơn giản.

Câu hỏi khá cơ bản. DO trần.

Trả lời

31

Procfile cho Heroku biết cần chạy lệnh gì (https://devcenter.heroku.com/articles/procfile).

Bạn có thể xác định các loại quá trình khác biệt, chẳng hạn như web (người duy nhất mà sẽ tự khởi động theo mặc định), công nhân, vv ...

Vì vậy, về cơ bản một Procfile chứa

web: python app.py 

là nói với Heroku để bắt đầu một quá trình có tên là web, và để chạy python app.py khi nó bắt đầu.

Có tài liệu Python cụ thể cho Heroku tại https://devcenter.heroku.com/articles/getting-started-with-python#declare-process-types-with-procfile

+0

Tôi hiểu. Cảm ơn một tấn – jarvis11