Skip to content

Deployments Overview

Expose Deployments let you deploy containerized applications to your VPS with a permanent public URL.

How It Works

Local Project Expose Server Container
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Source Code │─────►│ Build Image │─────────►│ Running App │
│ + Dockerfile │ │ Push to │ │ │
└──────────────┘ │ Registry │ │ Public URL │
└──────────────┘ └──────────────┘
  1. You provide source code (local project or Git repo)
  2. Expose builds a Docker image
  3. The image is pushed to the internal registry
  4. A container is started on the expose_user_apps network
  5. Your app is accessible at https://subdomain.hosted.yourdomain.com

Deployment Types

Local Project Deployment

Deploy directly from your local machine:

  1. Click Deploy to Cloud on a detected project
  2. Expose packages the source code
  3. Uploads to the server
  4. Builds and runs

Best for:

  • Quick deploys during development
  • Projects without Git repos
  • Testing before pushing to Git

Git Deployment

Deploy from a Git repository:

  1. Create a deployment with a repo URL
  2. Configure branch and subdomain
  3. Trigger deploy

Best for:

  • Production deployments
  • CI/CD integration
  • Team collaboration

Features

Auto-Generated Dockerfiles

Expose generates optimized Dockerfiles for 25+ frameworks:

  • Node.js (Next.js, Nuxt, Vite, Express, etc.)
  • Python (Django, FastAPI, Flask)
  • Go (Gin, Echo, Fiber)
  • Rust (Axum, Actix, Rocket)
  • Ruby (Rails, Sinatra)
  • PHP (Laravel, Symfony)

Environment Variables

Securely manage configuration:

  • Set variables per deployment
  • Variables are encrypted at rest
  • Available at build and runtime

Build Logs

Watch builds in real-time:

  • See Docker build output
  • Debug build failures
  • Track build duration

Rollbacks

Revert to any previous version:

  • Each successful build creates a rollback point
  • One-click rollback
  • Zero-downtime transitions

GitHub Webhooks

Automatic deploys on push:

  • Configure webhook in GitHub
  • Signature verification (HMAC-SHA256)
  • Branch filtering

Deployment States

StateDescription
PendingCreated, waiting for first deploy
BuildingDocker build in progress
RunningContainer is running
StoppedContainer stopped
FailedBuild or startup failed

Resource Limits

Deployments share your server’s resources:

  • No artificial CPU/memory limits by default
  • Consider your VPS capacity
  • Monitor with standard Docker tools

Use Cases

Side Projects

Host your personal projects:

portfolio.hosted.yourdomain.com
blog.hosted.yourdomain.com
api.hosted.yourdomain.com

Staging Environments

Deploy feature branches:

staging.hosted.yourdomain.com
feature-auth.hosted.yourdomain.com

Client Demos

Share work with clients:

acme-preview.hosted.yourdomain.com

Internal Tools

Host team utilities:

dashboard.hosted.yourdomain.com
admin.hosted.yourdomain.com