Documentation

Boxfuse

 

Welcome to Boxfuse, Immutable Infrastructure made easy.

Boxfuse is the easiest, most reliable and secure way to run your JVM, Node.js and Go apps on AWS.

In just a few seconds Boxfuse fuses a Payload, like a Spring Boot Executable Jar, JHipster Executable War, Grails Executable Jar, Dropwizard Executable Jar, Play Dist Zip, Tomcat War file, TomEE War file, Jar file, Node.js tgz, ELF64 Binary or a Revel tgz together with the required Components, like Tomcat, OpenJDK or Node.js into an Image we call a Bootable App.

Boxfuse then runs this Image unchanged on all environments, from Dev on VirtualBox to Prod on AWS. This can be done either via the Command-line client, the Maven Plugin or the Gradle Plugin.

Before you begin

If you haven't already, start by reading

Terms & Concepts

First, let's go over a few simple terms you will encounter:

Boxfuse Console: The online console to manage your Apps

Boxfuse Client: The installable client that lets you invoke the various commands pictured above

Boxfuse Inventory: The online inventory of all available versions of the various Components available to fuse Images

Boxfuse Vault: The secure online vault where you can store your Images

App: This is your application, as you've created in in the Boxfuse Console

Component: A dependency of your app provided by the Boxfuse Inventory. Examples: Tomcat, OpenJDK, ...

Payload: This payload of an Image, in one the usual standard formats like an executable .jar or a .war file

Image: A universally deployable immutable version of your App containing both the Payload and all the Components it needs to run. It can reside either on your machine or in the Boxfuse Vault.

Version: Every Image of an App has a unique version. Example: 1.23.456

Platform: A virtualization platform to run Instances on, like VirtualBox on your machine or AWS in the cloud

Environment: An isolated part of a Platform to your Instances in

Instance: A running instance of an Image inside an Environment

App Types