mirror of
https://github.com/kennethreitz/heroku-buildpack-python.git
synced 2026-06-05 23:10:16 +00:00
ff223597f3
* fixed the bug for pypy-5.8.0 * changelog Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * python 2.7.14 Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * pipfile > requirements.txt Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * check for python_full_version too Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * 2.7.14 Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * warn when using an older version of python Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * requirements for anaconda buildpack Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * remove hashes for conda buildpack Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * improvements to pipenv python version detection Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * oops Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * oops Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * oops Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * echo not puts Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * try this Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * learn more Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * there we go Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * cleanups Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * cleanups Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * cleanups Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * unsupported Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * consistiency Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * be more specific Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * capitalize Pipfile.lock Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * attempt to force color Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * try this Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * try this Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * interactive Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * interactive Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * diagnose Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * try without -l Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * confirmed env working Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * just -c Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * use latest, to debug Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * no more bash Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * try … Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * don't use the git version of pipenv Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * oops Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * next version Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * 2.7.14 Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * comment out force color bits Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * readme Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * more tests Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * more tests Signed-off-by: Kenneth Reitz <me@kennethreitz.org> * ellipsis Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
65 lines
2.2 KiB
Markdown
65 lines
2.2 KiB
Markdown

|
|
|
|
# Heroku Buildpack: Python
|
|
|
|
[](https://travis-ci.org/heroku/heroku-buildpack-python)
|
|
|
|
This is the official [Heroku buildpack](https://devcenter.heroku.com/articles/buildpacks) for Python apps, powered by [Pipenv](http://docs.pipenv.org/en/latest/), [pip](https://pip.pypa.io/) and other excellent software.
|
|
|
|
Recommended web frameworks include **Django** and **Flask**. The recommended webserver is **Gunicorn**. There are no restrictions around what software can be used (as long as it's pip-installable). Web processes must bind to `$PORT`, and only the HTTP protocol is permitted for incoming connections.
|
|
|
|
Some Python packages with obscure C dependencies are [not compatible](https://devcenter.heroku.com/articles/python-c-deps).
|
|
|
|
See it in Action
|
|
----------------
|
|
|
|
Deploying a Python application couldn't be easier:
|
|
|
|
$ ls
|
|
Pipfile Procfile web.py
|
|
|
|
$ heroku create --buildpack heroku/python
|
|
|
|
$ git push heroku master
|
|
…
|
|
-----> Python app detected
|
|
-----> Installing python-3.6.2
|
|
-----> Installing pip
|
|
-----> Installing requirements with latest pipenv…
|
|
...
|
|
Installing dependencies from Pipfile…
|
|
-----> Discovering process types
|
|
Procfile declares types -> (none)
|
|
|
|
A `Pipfile` or `requirements.txt` must be present at the root of your application's repository.
|
|
|
|
You can also specify the latest production release of this buildpack for upcoming builds of an existing application:
|
|
|
|
$ heroku buildpacks:set heroku/python
|
|
|
|
|
|
Specify a Python Runtime
|
|
------------------------
|
|
|
|
Specific versions of the Python runtime can be specified with a `runtime.txt` file:
|
|
|
|
$ cat runtime.txt
|
|
python-2.7.14
|
|
|
|
Or, with a `Pipfile.lock` (generated from the following `Pipfile`):
|
|
|
|
[requires]
|
|
python_version = "2.7"
|
|
|
|
Or, more specifically:
|
|
|
|
[requires]
|
|
python_full_version = "2.7.14"
|
|
|
|
Runtime options include:
|
|
|
|
- `python-3.6.2`
|
|
- `python-2.7.14`
|
|
- `pypy-5.7.1` (unsupported, experimental)
|
|
- `pypy3-5.5.1` (unsupported, experimental)
|