Deviceplane is available in two forms: as a managed service available at and as an open source project that can be installed on your own infrastructure. The self-hosted section of our documentation contains information on how to setup Deviceplane on your own. Usage of Deviceplane between the managed version and a self-hosted version is nearly identical and so we don't maintain seperate documentation on how to use a self-hosted Deviceplane installation.

Self-hosted Deviceplane is currently in beta. We make make no guarantees about the stability of a self-hosted install and critical workflows such as upgrading and rolling back are not currently supported.

We currently have documentation for two self-hosted use cases.

  • Local network setup The first guide sets up Deviceplane for use within a local network. This is the simplest way to try out Deviceplane, though it isn't capable of managing remote devices or devices on a different network.
  • Public setup This guide sets up Deviceplane publicly using DigitalOcean as an example cloud provider. This setup can be used to manage remote devices, but it should still not be considered a production setup.

Deviceplane Docker images

The Deviceplane backend consists of two components.

  • Controller The Deviceplane backend service.
  • Database A MySQL database with the Deviceplane schema.

Deviceplane maintains two Docker images.

  • deviceplane/deviceplane Contains both the controller and an embedded MySQL with the schema preloaded. Used for the two documented self-hosted use cases.
  • deviceplane/controller Contains only the controller. Used when you want to connect to an external MySQL database.

Setups using an external database are not yet documented.