Supported Frameworks
Disco works with anything that can be containerized. We maintain a collection of “Hello World” starter repositories that include a valid Dockerfile and disco.json to get you started quickly.
Quick Start Repositories
Section titled “Quick Start Repositories” Node.js Simple Express.js server example.
Python (Flask) Basic Flask application.
Static HTML Serve static files.
Vite Build and serve Vite.
Go Standard Go web server.
Rust Actix-based Rust server.
Framework-Specific Notes
Section titled “Framework-Specific Notes”Some frameworks require a bit more configuration, especially regarding databases or environment variables.
Static Sites
Section titled “Static Sites”For pure static sites (HTML/CSS/JS), you don’t need a Dockerfile. You just need to tell Disco where your public files are, as in this example repo.
{ "version": "1.0", "services": { "web": { "type": "static", "publicPath": "public" } }}Django & Postgres
Section titled “Django & Postgres”If you are deploying Django with PostgreSQL, you will need to configure the database connection and run migrations.
- Fork the Repo: letsdiscodev/example-django-postgres-site
- Add the Database: Use the Disco CLI or Dashboard to attach a Postgres database.
Terminal window disco postgres:create --project my-django-app - Environment Variables: Ensure
DATABASE_URLandDJANGO_SECRET_KEYare set in your project settings. - Migrations: You can run migrations via the “Run Command” feature in the dashboard:
Terminal window python manage.py migrate
Meilisearch
Section titled “Meilisearch”Deploying Meilisearch requires setting a master key for security.
- Fork the Repo: letsdiscodev/sample-meilisearch
- Set the Master Key: In the “Environment Variables” section of your project, add:
MEILI_MASTER_KEY: A strong random string (e.g. generated viaopenssl rand -base64 12).
- Deploy: Once the variable is set, trigger a deployment. Meilisearch will initialize with your key.