Skip to content

Use case

Deploy apps from Git to your own server

Last reviewed October 2026

Connect a repo, push a commit, and Vexlyx builds the app and runs it on your server over HTTPS. Nixpacks detects the framework, so Next.js, Node, Python and Vite apps deploy without a Dockerfile. Anything else runs from your own Dockerfile.

How a deploy works

Connect: use the panel's GitHub App to pick a repo and branch, with private access and push-to-deploy set up for you, or paste any Git URL for GitLab, Bitbucket, Gitea or a self-hosted server, with a generated SSH deploy key for private repos.

Build: Nixpacks reads the repo and builds an image. The build log streams to the dashboard as it runs.

Run: Traefik serves the app at https://<project>.<your-domain> with a Let's Encrypt certificate and no per-project DNS setup. Attach your own domain whenever you're ready.

Redeploy: every push to the configured branch rebuilds and redeploys. Pushes to other branches are ignored.

What each framework gets

Next.js: SSR, API routes, ISR and next/image work out of the box. The build cache is kept between deploys, so later builds are usually 50 to 80% faster than the first.

Node.js: any package.json app. Listen on process.env.PORT and bind to 0.0.0.0.

Python: Django, Flask and FastAPI are detected and started with gunicorn or uvicorn, no configuration needed.

React/Vite and static: built to dist/ with client-side routing fallback, so a hard refresh on /about still works. Plain HTML deploys with no build at all.

Anything else: write or paste a Dockerfile in the dashboard, with starter templates for Go, Rust, Bun and more. Vexlyx routes traffic to the first port you EXPOSE.

Environment variables are encrypted at rest (AES-256-GCM) and can be imported from a .env file. NEXT_PUBLIC_* and VITE_* values are passed into the build too, so adding one doesn't mean deploying twice.

When the project needs more than the app

The same server can provision a PostgreSQL or MySQL database for the app, host the marketing site on WordPress, run mailboxes for the domain and serve its DNS. Add those only if the project needs them.

What you get

  • Git deploys from GitHub, GitLab, Bitbucket or any Git server, with auto-redeploy on push
  • Zero-config builds via Nixpacks, or your own Dockerfile
  • Automatic SSL through Traefik
  • Live build and runtime logs
  • Encrypted environment variables per project
  • Optional databases, WordPress, mail and DNS on the same server

Questions

Which frameworks are supported?

Next.js, Node.js, Python (Django, Flask, FastAPI), React/Vite and static sites are detected automatically. Anything else deploys from a Dockerfile.

Do I need to write a Dockerfile?

Not for the frameworks above. For other stacks, yes, and the dashboard has starter templates for common ones.

How is this different from other self-hosted deploy tools?

The deploy side is similar across most of them: Git, a build, and a reverse proxy with SSL. The difference is what else runs on the server. See how Vexlyx compares with Coolify, Dokploy and CapRover.

Can it spread apps across multiple servers?

No. Vexlyx manages the one server it's installed on. If you need to run apps across many machines, a multi-server tool is a better fit.

Is there a cost per app or per deploy?

No. The software is free and MIT licensed, with no per-app or per-seat pricing. You pay only for the server.

Ready to try it on your own server?

One install command on a fresh Ubuntu 24.04 box.

Install Vexlyx