fuse

fuse

Fuses a Payload together with the Components it requires into an Image.

Usage: boxfuse fuse payload

If no Payload is specified, CloudCaptain will search for a suitable one in the current directory.

> boxfuse fuse hello-1.0.war

Fusing Image for hello-1.0.war ...
Image fused in 00:07.351s (48147 K) -> axelfontaine/hello:1.0

Supported Payload formats:

  • Executable jar file
  • War file
  • Play dist zip
  • Node.js tgz
  • ELF64 binary
  • Revel tar.gz

Settings

Argument boxfuse.conf property Default Description
-cmd=... cmd first executable file in image

Generic Linux x64 apps only

The command to start the app including relative path and all necessary arguments
-components.NAME=version components.NAME latest version Pins the component with this name onto this version.
Example: -components.tomcat=8.0.9
-debug debug false Start the Payload in debug mode when an Instance launches
-debug.wait debug.wait false

JVM apps only

Whether the JVM should wait for the remote debugger to connect (Only applicable when debug mode is active)
-envvars.NAME=value envvars.NAME Fuses this environment variable into the image and make it available at runtime
Example: -envvars.JDBC_URL=jdbc:mydburl
-healthcheck healthcheck true Check whether to payload started correctly
-healthcheck.port=... healthcheck.port autodetected The name of the port to check whether the payload started correctly (must be an https or http port, not tcp or udp). Example: admin-https
-healthcheck.path=... healthcheck.path / The path to check whether to payload started correctly
-healthcheck.timeout=... healthcheck.timeout 300 The number of seconds to wait for the Payload to come up
-image=... image autodetected The image app name and version. By default this is autodetected based on the payload name. For example myapp-1.2.jar would trigger the creation of the image myapp:1.2. You can override this by explicitly setting this property to say my-other-app:333.
-jvm.args=... jvm.args

JVM apps only

Extra arguments to pass to the JVM
-jvm.jmx jvm.jmx false

JVM apps only

Enable the JMX remote management and profiling interface for the JVM
-jvm.main.class=... jvm.main.class autodetected

JVM apps only

Main class to invoke on JVM startup
-jvm.main.args=... jvm.main.args

JVM apps only

Arguments to pass to the main class
-linux.args=... linux.args quiet

Experts only

The arguments to pass from the bootloader to the Linux kernel
-live live false Enable live reloading of changes in dev for super fast round-trips. Note that images with live reloading cannot be pushed to the CloudCaptain Vault.
-newrelic.licensekey=... newrelic.licensekey Installs and configures the New Relic agents to monitor your instance.
-payload.port payload.port autodetected The name of the port on which the payload starts (usually http or https)
-payload.path payload.path / The path where the payload starts
-ports.NAME=definition ports.NAME http=80

Exposes the port of the app with this name using this definition. Example: -ports.jmx=8001

Supported formats:

80HTTP port 80, universally accessible
443HTTPS port 443, universally accessible
5555TCP port 5555, universally accessible
5555/httpsHTTPS port 5555, universally accessible
5555/httpHTTP port 5555, universally accessible
5555/tcpTCP port 5555, universally accessible
5555/udpUDP port 5555, universally accessible
5555/tcp:@TCP port 5555 only accessible from your own IP
5555/udp:@/20UDP port 5555 only accessible from the IPs in the CIDR /20 block of your own IP
5555/udp:1.2.3.4UDP port 5555 only accessible from 1.2.3.4
5555/http:1.2.3.4/31HTTP port 5555 only accessible from the IPs in the CIDR /31 block of 1.2.3.4
-tmp=... tmp 1 The amount of temp space to allocate to /tmp in GB
-vault vault false Immediately upload the new Image to the CloudCaptain Vault

ls