Deploy Flask to Production | Flask Hosting on seenode

Deploy a Flask app

Deploy your Flask app on seenode with a simple setup. Follow our quickstart guide to configure, connect Git, and go live in minutes.

New to seenode? Start free: 7-day trial, no credit card. Apps run on credit-based pricing from $3/mo.

This guide will walk you through deploying your existing Flask application on seenode. We’ll use Gunicorn as our production WSGI server.

Prerequisites

Before you begin, ensure you have:

  • A seenode account (sign up free)
  • Git configured on your machine
  • Existing Flask project ready to deploy

Configure for seenode Deployment

Application Structure

Ensure your project is configured for production. Your project should have an app.py file and a requirements.txt. seenode will look for an app instance in your app.py file.

app.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "Hello, from Seenode!"

Requirements

Your requirements.txt should include flask. For production, we also recommend a WSGI server like gunicorn:

requirements.txt
flask
gunicorn

Deploy on seenode

  1. Push to Git

    Commit your project and push it to GitHub or GitLab.

  2. Create a Web Service

    From the seenode Dashboard, create a New Web Service, connect your Git provider, and select your Flask project’s repository.

  3. Configure Build & Start

    Configure your service’s settings. For a typical Flask app, use:

    • Build Command: pip install -r requirements.txt
    • Start Command: gunicorn app:app --bind 0.0.0.0:80

    The Port field defaults to 80; set it to the value your app uses (for example, 80). Ensure your application binds to the same port (for example, --bind 0.0.0.0:80). Do not rely on a PORT environment variable; seenode routes using the configured Port input.

  4. Deploy

    Click Create instance and watch logs until your web service is live.

  5. Success

    Once complete, your application is accessible via your service’s URL.

::::tip[Troubleshooting] If your deployment fails, the first place to check is the Logs tab in your seenode service dashboard. Build and runtime logs often contain valuable information for diagnosing issues.

Port configuration mismatch

  • The Port field defaults to 80. Ensure your application listens on host 0.0.0.0 and the port you set in the Configure Build & Start screen.
  • Adjust in framework config if needed (for example, change your gunicorn bind port or how your app reads the port).
  • Seeing a 502 Bad Gateway? This often means your app is not listening on the configured port. ::::

Starting from Scratch?

If you don’t have a Flask project yet:

Option 1: Use our Template (Recommended)

Option 2: Create from Flask Docs + seenode Setup

Follow the official Flask documentation to create a new project, then return here for seenode-specific deployment steps.

seenode-Specific Setup Steps:

  1. Create app.py with Flask app
  2. Add requirements.txt with Flask and Gunicorn
  3. No additional configuration needed

Next Steps

Now that your Flask app is deployed, here are some recommended next steps: