/exoframe

Exoframe is a self-hosted tool that allows simple one-command deployments using Docker

Primary LanguageJavaScript

Exoframe

Simple Docker deployment tool

Build Status Coverage Status npm license

Exoframe is a self-hosted tool that allows simple one-command deployments using Docker.

Features

  • One-command project deployment
  • SSH key based auth
  • Rolling updates
  • Deploy tokens (e.g. to deploy from CI)
  • Automated HTTPS setup via letsencrypt *
  • Automated gzip compression *
  • Rate-limit support *
  • Simple access to the logs of deployments
  • Docker-compose support
  • Multiple deployment endpoints and multi-user support
  • Simple update procedure for client, server and Traefik
  • Optional automatic subdomain assignment (i.e. every deployment gets its own subdomain)
  • Swarm mode deployments
  • Complex recipes support (i.e. deploy complex systems in one command)

* Feature provided by Traefik

Demo

asciicast

Installation and Usage

To run Exoframe you will need two parts - Exoframe CLI and Exoframe server.
For server install instructions see Exoframe server repository.

To install Exoframe CLI you can either download one of the pre-packaged binaries from releases page or install it using npm (needs at least Node 8.x):

npm install exoframe -g

Make sure you have Exoframe server deployed, set it as your endpoint using:

exoframe endpoint http://you.server.url

Then login using:

exoframe login

Then you will be able to deploy your projects by simply running:

exoframe

You can find a list of all commands and options in the docs.

Docs

Special thanks

Thanks to:

License

Licensed under MIT.