Flask is a lightweight micro web framework for Python. Its simplicity and flexibility make it an excellent choice for building anything from small personal projects to complex, production-ready web applications. In this guide, we’ll walk you through the process of how to install Flask on Debian 12.
Flask depends on the Werkzeug WSGI toolkit, the Jinja template engine, and the Click CLI toolkit. Whether you’re a seasoned developer or just starting your web development journey, we’ll provide you with clear and easy-to-follow steps to ensure you have Flask up and running in no time.
Table of Contents
- SSH access to the root user or a regular system user with sudo privileges
Step 1. Log in via SSH
Let’s log in to your Debian 12 VPS with SSH. You can log in as a root user, or as a regular user with sudo privileges.
ssh root@IP_Address -p Port_number
If you cannot log in as root, remember to replace “root” with a user that has sudo privileges. Additionally, replace the “IP_Address” and “Port_Number” with your server’s respective IP address and SSH port.
Once logged in, update the package repository files on the system with the command:
# apt update
Step 2. Install Python Packages and Create a Virtual Environment
Debian 12 comes with Python version 3.11 installed by default – you can check this with the command:
# python --version
Now you can install the required packages python3-pip and python3-venv with the command:
# apt install python3-venv python3-pip
You can install Flask globally with the command pip3 install flask, but it’s recommended to create a virtual environment and install the Flask application there.
Let’s create a new user and install the Flask application in a new virtual environment:
# adduser john
Now, you can log in as the user john with the above command. After logging in, create the directories flaskapp/templates:
# su - john
$ mkdir -p flaskapp/templates
Step 3. Install Flask on Debian 12
Enter the directory called flaskapp – you can now go ahead and create the virtual environment.
$ cd flaskapp
$ python3 -m venv virtualenv
Now enter the virtual environment with:
# source virtualenv/bin/activate
You have now activated the virtual environment, where we can start our installation. Let’s install Flask and Gunicorn:
(virtualenv) john@debian12$ pip3 install flask gunicorn
After the installation is completed, you should receive a similar output:
Successfully installed Jinja2-3.1.2 MarkupSafe-2.1.3 Werkzeug-3.0.0 blinker-1.6.3 click-8.1.7 flask-3.0.0 gunicorn-21.2.0 itsdangerous-2.1.2 packaging-23.2
Running a Simple Flask Application
Once Flask is installed, you can run a simple application to test if everything is working as expected. Make sure you are logged in as the user “john”. Create an app.py file using your preferred text editor:
(virtualenv) john@debian12 ~/flas$ nano simpleapp.py
Add the following code to the file:
from flask import Flask
app = Flask(__name__)
return 'Hello, World!'
if __name__ == '__main__':
Save and close the file. You can now run this example program:
flask run &
The application will continue running in the background listening on port 5000.
You can check the output of the program with this quick command:
You should get the following output:
127.0.0.1 - - [13/Oct/2023 08:14:17] "GET / HTTP/1.1" 200 -
Congratulations! You have successfully installed Flask on Debian 12. You can now use Flask to run your programs and develop software.
Of course, you don’t have to know how to install Flask on Debian 12 if you use one of our Debian VPS Hosting services, in which case you can simply ask our expert Linux admins to set up Flask on Debian 12 VPS for you. They are available 24/7 and will take care of your request immediately.
PS. If you liked this post on how to set up Flask on Debian 12, please share it with your friends on social networks or simply leave a reply in the comments section. Thanks.