Improved support for cgroupfs and systemd, system workloads and nested RunCVM
This release brings:
- Improved support for cgroupfs and Systemd.
- Previously, a RunCVM VM image would be responsible for mounting cgroupfs filesystems. This is a good model for system images like those running systemd, but for non-systemd images it is more convenient if an appropriate cgroupfs is automatically mounted, so that for example
dockerd
can be run immediately. - This release introduces automatic detection of the most suitable default cgroupfs behaviour for the image, and an environment variable
RUNCVM_CGROUPFS
which allows that default to be overridden.
- Previously, a RunCVM VM image would be responsible for mounting cgroupfs filesystems. This is a good model for system images like those running systemd, but for non-systemd images it is more convenient if an appropriate cgroupfs is automatically mounted, so that for example
- More tolerant 'docker exec' during container+VM startup
- Rather than fail immediately on absence of dropbear sshd key or network parameters,
docker exec
now retries checking for these up to 30x every 0.5s, providing better results when RunCVM is used as a Dockside runtime - In the event these prerequisites are not found immediately, an extra 2s delay is allowed before making the ssh connection to the VM, to allow time for the dropbear sshd to launch
- Rather than fail immediately on absence of dropbear sshd key or network parameters,
/.dockerenv
renamed on VM startup so thatsystemd-detect-virt
does not returndocker
, allowing systemd to run units normally prevented from running in a container environment- New 'System workload' examples demonstrate running:
- Document the process for testing RunCVM installation and/execution using nested RunCVM
Short log
2e9d7e6 Document process for testing RunCVM within a RunCVM VM
8ceee8f Improve readability of system workload examples, link to Asciinema replays
42c60ba Improve 'Quick start' documentation clarity
9edb8b2 Update README.md with Asciinema cast
c1546b2 Bugfix: make 'docker exec' more tolerant during container+VM startup
a729618 Add README examples for two system loads
cf4c3a6 Make 'docker exec' more tolerant during container+VM startup
946feab Suppress unneeded logging when mounting fstab filesystems (incl. any RUNCVM_DISKS)
eb7b7a8 Enable systemd startup logging by default (on systemd-enabled systems)
29eb732 Suppress unneeded mke2fs logging
a046735 Rename /.dockerenv, improving systemd support
6377890 Add '--no-dockerd' option to installer to allow installation where dockerd is not present, e.g. via 'docker build'
99f0e91 cgroupfs v1 and v2 support for better integration with Docker and Systemd
a3477f0 Correctly add not just files but any subdirectories
6cb1e19 Support OpenWRT
53a334f Update README.md to explain RunCVM/Kata motivations
Full Changelog: v1.2.0...v1.3.0