Skip to content

puniverse/capsule-osv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Capsule OSv

A caplet that wraps a capsule in an OSv image.

Requirements

In addition to Capsule's:

Usage

The Gradle-style dependency you need to embed in your Capsule JAR, which you can generate with the tool you prefer (f.e. with plain Maven/Gradle as in Photon and capsule-gui-demo or higher-level Capsule build plugins), is co.paralleluniverse:capsule-osv:0.1.0. Also include the caplet class in your Capsule manifest, for example:

    Caplets: MavenCapsule OsvCapsule

capsule-osv can also be run as a wrapper capsule without embedding it:

$ java -Dcapsule.log=verbose -jar capsule-osv-0.1.0.jar my-capsule.jar my-capsule-arg1 ...

It can be both run against (or embedded in) plain (e.g. "fat") capsules and Maven-based ones.

Additional Capsule manifest entries

The following additional manifest entries and system properties can be used (see the Capstan docs for further details):

  • capsule.osv.buildOnly system property: builds an image without launching the app (default: false).
  • capsule.osv.hypervisor system property: allows to specify a non-default hypervisor to be used by OSV (default: KVM on Linux).
  • Port-Forward manifest entry: configure OSv port forwarding (default: none). The capsule.osv.portForward system property can override it.
  • Network-Type: configure OSv network type (default: user networking on KVM). The capsule.osv.networkType system property can override it.
  • Physical-NIC-Name: configure OSv physical NIC name (needed with VirtualBox). The capsule.osv.physicalNICName system property can override it.

Known caveats

At present Java agents don't work (see this OSv issue).

License

MIT