uwsgi-nginx-docker

Docker image with uWSGI and Nginx for applications in Python (as Flask) in a single container.

APACHE-2.0 License

Stars
645
Committers
17

Bot releases are hidden (Show)

uwsgi-nginx-docker - 2.1.0 Latest Release

Published by tiangolo 7 months ago

Features

  • ✨ Add support for multiarch builds, including ARM (e.g. Mac M1). PR #200 by @tiangolo.

Refactors

Upgrades

Docs

Internal

uwsgi-nginx-docker - 2.0.0

Published by tiangolo almost 2 years ago

Highlights of this release:

  • Support for Python 3.10, 3.11, and 3.9.
  • Deprecation of Python 3.6 and 2.7.
    • The last Python 3.6 and 2.7 images are available in Docker Hub, but they won't be updated or maintained anymore.
    • The last images with a date tag are python3.6-2022-11-25 and python2.7-2022-11-25.
  • Upgraded versions of all the dependencies.
  • Small improvements and fixes.

Features

  • ✨ Add support for Python 3.11. PR #171 by @tiangolo.
  • ✨ Add support for Python 3.10 and upgrade uWSGI to 2.0.20. PR #127 by @tiangolo.
  • ⬆️ Update pip install command with flag --no-cache-dir to reduce disk used. PR #120 by @tiangolo.
  • ✨ Quit Supervisor on errors, to allow orchestrators to handle it. PR #110 by @tiangolo.
  • ✨ Add Python 3.9. PR #101 by @sjadema.

Breaking Changes

Upgrades

  • ⬆️ Upgrade Nginx to the latest version 1.23.2, and Debian to bullseye. PR #163 by @tiangolo.
  • ⬆️ Bump uwsgi from 2.0.20 to 2.0.21. PR #159 by @dependabot[bot].
  • ⬆ Upgrade Nginx to version 1.21.6 and Alpine to version 3.13. PR #148 by @haley-comet.
  • ⬆ Upgrade Nginx to the latest version of the official images. PR #107 by @tiangolo.

Docs

  • 📝 Add note to discourage Alpine with Python. PR #124 by @tiangolo.
  • 📝 Add Kubernetes warning, when to use this image. PR #122 by @tiangolo.
  • ✏️ Fix typo duplicate "Note" in Readme. PR #121 by @tiangolo.
  • 🐛 Fix broken link to TechEmpower benchmarks. PR #96 by @tiangolo.

Internal

uwsgi-nginx-docker - 1.4.0

Published by tiangolo over 4 years ago

  • Add GitHub Sponsors button.
  • Add new image for Python 3.8, and new image for Python 3.8 on Alpine. PR #83.
  • Upgrade Nginx to latest version, 1.17.10, based on latest Debian, Buster. PR #82.
  • Remove support for Python 3.5. PR #81.
uwsgi-nginx-docker - 1.3.0

Published by tiangolo over 4 years ago

  • This is the last version to support:
    • Debian Stretch (before upgrading to Buster).
    • Python 3.5.
    • Alpine 3.7, 3.8, 3.9 (before upgrading to Alpine 3.11).
    • Alpine in older versions of Python, 2.7 and 3.6 (Before upgrading to Python 3.8).
    • If you need any of those, make sure to use a tag for the build date 2020-05-04.
  • Refactor build set up:
    • Re-use code and configs.
    • Migrate to GitHub Actions.
    • Simplify tests.
    • PR #78.
  • Migrate Travis to .com, update badge. PR #77.
uwsgi-nginx-docker - 1.2.0

Published by tiangolo about 5 years ago

  • 2019-10-14:

    • Refactor and simplify test scripts. PR #66.
  • 2019-09-28:

    • Refactor build scripts and add image tags for each build date, like tiangolo/uwsgi-nginx:python3.7-2019-09-28. PR #65.
  • Upgrade Travis. PR #60.

uwsgi-nginx-docker - 1.1.0

Published by tiangolo over 5 years ago

uwsgi-nginx-docker - 1.0.0

Published by tiangolo over 5 years ago

The first release declared "stable"! 🎉 🍰 🌮

The image has proven to be stable for a long time now, and the API has been frozen (backwards compatible) for a long time too.

And now there are tests covering all the options ensuring stability, which is especially important after changes.

This version reflects the status of the project (actually for long ago) using "semantic versioning".

It also adds changes to:

  • Reduce the chances of introducing bugs.
  • Provide support for several use cases (requested in issues).

Changes

  • The Nginx configurations are generated dynamically from the entrypoint, instead of modifying pre-existing files. PR #50.
  • Support for a completely custom /app/nginx.conf file that overrides the generated one. PR #51.

For more details, check the section in the docs: https://github.com/tiangolo/uwsgi-nginx-docker#overriding-nginx-configuration-completely

uwsgi-nginx-docker - Latest tag points to Python 3.7

Published by tiangolo almost 6 years ago

Latest tag points now to Python 3.7.

New Travis integration, to monitor continuous building errors.

uwsgi-nginx-docker - Python 3.7 versions

Published by tiangolo about 6 years ago

  • 2018-09-22: New Python 3.7 versions, standard and Alpine based. Thanks to desaintmartin in this PR.

  • Bug fixes.

uwsgi-nginx-docker - Nginx connections number

Published by tiangolo over 6 years ago

  • 2018-06-22: You can now use NGINX_WORKER_CONNECTIONS to set the maximum number of Nginx worker connections and NGINX_WORKER_OPEN_FILES to set the maximum number of open files. Thanks to ronlut in this PR.
uwsgi-nginx-docker - Graceful shutdown handling

Published by tiangolo over 6 years ago

  • 2018-06-22: Make uWSGI require an app to run, instead of going in "full dynamic mode" while there was an error. Supervisord doesn't terminate itself but tries to restart uWSGI and shows the errors. Uses need-app as suggested by luckydonald in this comment.

  • 2018-06-22: Correctly handled graceful shutdown of uWSGI and Nginx. Thanks to desaintmartin in this PR.

uwsgi-nginx-docker - Fix bug: multiple Nginx listen entries

Published by tiangolo almost 7 years ago

Fix bug: multiple Nginx listen entries

For the details, check https://github.com/tiangolo/uwsgi-nginx-docker/pull/19 by jdoig

uwsgi-nginx-docker - Dummy release

Published by tiangolo almost 7 years ago

uwsgi-nginx-docker - Configure which port the container should listen on, using the environment variable LISTEN_PORT

Published by tiangolo almost 7 years ago

  • 2017-12-08: Now you can configure which port the container should listen on, using the environment variable LISTEN_PORT .

Thanks to @tmshn in https://github.com/tiangolo/uwsgi-nginx-docker/pull/16

uwsgi-nginx-docker - Set custom max upload size with env var NGINX_MAX_UPLOAD

Published by tiangolo about 7 years ago

You can set a custom maximum upload file size using an environment variable NGINX_MAX_UPLOAD, by default it has a value of 0, that allows unlimited upload file sizes. This differs from Nginx's default value of 1 MB. It's configured this way because that's the simplest experience a developer that is not expert in Nginx would expect.

uwsgi-nginx-docker - Now you can override the default directory

Published by tiangolo about 7 years ago

  • 2017-08-09: Now you can override where to look for the uwsgi.ini file, and with that, change the default directory from /app to something else, using the envirnoment variable UWSGI_INI.
uwsgi-nginx-docker - New latest with deprecation warning

Published by tiangolo about 7 years ago

  • 2017-08-08: There's a new latest tag image, just to show a warning for those still using latest for Python 2.7 web applications. As of now everyone should be using Python 3.

In a future release it will point to python3.6.

uwsgi-nginx-docker - Stop uWSGI on SIGTERM

Published by tiangolo about 7 years ago

Now Supervisord will stop uWSGI processes on a SIGTERM signal, like when you run docker stop container-name.

uwsgi-nginx-docker - Python 3.6

Published by tiangolo about 7 years ago

Python 3.6 is now supported.

Check https://github.com/tiangolo/uwsgi-nginx-docker/pull/6 by @jrd .

Use it in your Dockerfile as:

FROM tiangolo/uwsgi-nginx:python3.6


# Add your Dockerfile commands
Badges
Extracted from project README
Test Deploy
Related Projects