Need help with python-sample-vscode-flask-tutorial?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

microsoft
139 Stars 1.3K Forks MIT License 56 Commits 3 Opened issues

Description

Sample code for the Flask tutorial in the VS Code documentation

Services available

!
?

Need anything else?

Contributors list

Python/Flask Tutorial for Visual Studio Code

  • This sample contains the completed program from the tutorial, make sure to visit the link: Using Flask in Visual Studio Code. Intermediate steps are not included.

  • It also contains the Dockerfile and uwsgi.ini files necessary to build a container with a production server. The resulting image works both locally and when deployed to Azure App Service. See Deploy Python using Docker containers.

  • To run the app locally:

    1. Run the command
      cd hello_app
      , to change into the folder that contains the Flask app.
    2. Run the command
      set FLASK_APP=webapp
      (Windows cmd) or
      FLASK_APP=webapp
      (macOS/Linux) to point to the app module.
    3. Start the Flask server with
      flask run
      .

The startup.py file

In the root folder, the

startup.py
file is specifically for deploying to Azure App Service on Linux without using a containerized version of the app (that is, deploying the code directly, not as a container).

Because the app code is in its own module in the

hello_app
folder (which has an
__init__.py
), trying to start the Gunicorn server within App Service on Linux produces an "Attempted relative import in non-package" error.

The

startup.py
file, therefore, is a shim to import the app object from the
hello_app
module, which then allows you to use startup:app in the Gunicorn command line (see
startup.txt
).

Contributing

Contributions to the sample are welcome. When submitting changes, also consider submitting matching changes to the tutorial, the source file for which is tutorial-flask.md.

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot automatically determines whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

Additional details

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.