Capsule OSv
A caplet that wraps a capsule in an OSv image.
Requirements
In addition to Capsule's:
- Capstan correctly installed.
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). Thecapsule.osv.portForward
system property can override it.Network-Type
: configure OSv network type (default: user networking on KVM). Thecapsule.osv.networkType
system property can override it.Physical-NIC-Name
: configure OSv physical NIC name (needed with VirtualBox). Thecapsule.osv.physicalNICName
system property can override it.
Known caveats
At present Java agents don't work (see this OSv issue).
License
MIT