First Deployment

Deploy an app with custom domains, environment variables, and Git integration.

This guide walks through deploying a real project with all the essentials configured.

Deploy from Git

Create a project pointing at a GitHub repository, then turn on push-to-deploy:

openship project create --name your-app --git-owner you --git-repo your-app
openship project git auto-deploy your-app     # enable deploy-on-push (see --help)

Openship detects the framework and build command, generates a Dockerfile when one is needed, and — with auto-deploy on — rebuilds on every push to the deploy branch.

Custom domains

openship project connect your-app yourapp.com

SSL certificates are provisioned automatically via Let's Encrypt. Wildcard certificates are supported.

Environment variables

# `set` merges: upsert KEY=VALUE pairs (and/or delete keys) in one call
openship project env set your-app DATABASE_URL="postgres://..." REDIS_URL="redis://..."
openship project env get your-app             # list (secrets masked)

Variables are encrypted at rest and injected at build time and runtime.

Preview deployments

Every pull request gets a unique preview URL:

https://pr-42--your-app.preview.openship.io

Preview deployments are destroyed automatically when the PR is merged or closed.

Rollbacks

Find a previous deployment, then roll back to it:

openship deployment list --project your-app
openship deployment rollback <deploymentId>

Instant rollback to any previous deployment. Zero downtime.

On this page