How to Deploy Your Flask App on DirectAdmin

Want to deploy a Python Flask app on DirectAdmin? This super quick guide shows you how—in under 5 minutes if you know your way around, or 10 if you’re just starting out. Let’s get into it!
thumbnail

This is a step-by-step quick guide on how to deploy a Python Flask app on the DirectAdmin panel. This is the shortest guide; the deployment takes less than 5 minutes if you are experienced, and about 10 minutes for a beginner. So, let’s head towards our deployment steps.

Step 1:

Log in to your DirectAdmin panel and using the search bar, search for “Python Setup”. Now click on that, and you will see this interface on your screen.

img

As shown in the image, click on the “Create Application” button. After that, you will see the interface below. This interface might make the setup seem difficult, but it’s as easy as hosting an HTML file on the server. Now, follow the instructions carefully in the following steps.

Now, after completing the steps as shown and clicking on the “Create” button, your app will be created, and you will see the following message on your website URL: “It Works! and Your (Selected python version)”.

However, remember, if you provide incorrect details, such as the wrong path or file name, your app will not be created, and you will encounter errors. So, make sure to enter the correct filename and path. Now, let’s move on to the next step.

Step 2:

Now we need to install our required modules and also replace the “file_name.py” code with our main Python code. So, let’s see how to do it.

The first important step is to install all the required modules. To do that, create a file named “requirements.txt” inside your Python app folder and enter the names of your required modules in this format as shown.

Requirements.txt’s Format Example:

				
					Flask==2.3.3
SQLAlchemy==2.0.20
Pillow==9.4.0
pandas==2.1.1
requests==2.31.0
gunicorn==21.2.0
				
			

Now, after creating the “requirements.txt” file and entering the modules you want to install with the desired versions, navigate to this page as “shown in the image below” and add the requirements.txt file name in the input field located below the “Configure Files” section. Then, click on the “Add” button.

img

After adding the “requirements.txt”file, the “pip install” process will be activated. By using pip install, you can install the modules listed inside the “requirements.txt” file. Let’s see how to run pip; it’s very easy.

After all the modules have been installed, the last step is to set up “passenger_wsgi.py”. This file will import our main Python script, allowing our Python app to be displayed in the browser. Let’s see how to do that in simple steps.

During the installation, a file named “passenger_wsgi.py: will be automatically created in the directory you specified during the setup. Go to the passenger_wsgi.py file and click on Edit. The default content of passenger_wsgi.py” will look the same for everyone.

Passenger.wsgi Default Content:

				
					import os
import sys

sys.path.insert(0, os.path.dirname(__file__))

def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/plain')])
    message = 'It works!\n'
    version = 'Python %s\n' % sys.version.split()[0]
    response = '\n'.join([message, version])
    return [response.encode()]
				
			

Change this default content to the provided code below, and make sure to edit the code according to the name of your main Python file. Let’s see this step in more detail.

Replace default passenger.wsgi code with this code:

				
					import sys
import os

# Add the path to your project directory to the Python path
sys.path.insert(0, os.path.dirname(__file__))

# Import your Flask app from the root level
from [YOUR_FILE_NAME] import app as application
				
			

Change “[YOUR_FILE_NAME]” with your actual main Python file name, and then save the file. Finally, after all these overwrite your Main Python file code or re-upload your main Python file.

Now, head over to your website URL and check, your Python Flask app is ready to serve and accessible to everyone!

Hope this guide helps you successfully deploy your Python Flask app! However, if you face any issues while deployment, feel free to reach out to us—we’re here to serve you 24/7. If you are a “HostFlare Hosting User” don’t worry!, We can set up your Flask app for free. Just reach out to us via live chatemail, or ticket, and get your app deployed for free! Please like and share this post if you found it helpful. We appreciate the time you took to read this.Thank you, and Happy Coding 🙂

Previous Article

cPanel vs DirectAdmin: Which Control Panel is Right for You?

View Comments (1)

Leave a Comment

Your email address will not be published. Required fields are marked *