reports/2017-06-19.md
This report covers weekly developments in the linuxkit virtsock and the linuxkit-ci repositories. There is a Moby development Summit in the Docker office in San Francisco on June 19, with several of the LinuxKit developers present (see agenda at #2033). This week the following major activity went into the tree:
Added a static usermode helper:: Linux 4.11 has a safer mechanism for user mode helpers that forces all user-mode helper binaries to a single read-only path. Allowed binaries are whitelisted, and this reduces the attack surface in the kernel. (#2037 #1760 @tych0 @ijc @MagnusS @rn).
Moby command: The tool now supports ~ in paths, allowing for example the user's ssh key to be automatically added in the ssh examples (#2027 @justincormack). The moby command was also tidied up to use a unified coding style (#2054 @rn @riyazdf).
Dynamic VHD support: There is now a mkimage package to create dynamic VHD images (static/fixed VHD images are already supported by LinuxKit). Dynamic VHD files are smaller in size, making them much easier to upload to the IBM cloud. (#1955 @davefreitag @justincormack)
Cold plug of devices: While mdev handles hot-plug of devices added to the system after it was booted, it did not support cold-plug (i.e. loading modules for devices which are present on boot). This is now supported via rc.init (#2038 @pwFoo @justincormack)
Custom containerd client: The latest containerd has removed the --runtime-config option which we relied on. Since ctr is not (considered by containerd devs) to be a supported interface, LinuxKit now uses a custom client written against the containerd client library. (#2041 @riyazdf @ijc @justincormack)
setsid in init: The containerisation of getty last week continues, with various improvements to support using setsid in the init phase as well as a service (#2036 #2044 @deitch @riyazdf @ijc @rn @justincormack)
Hyperkit multiple disk and vmnet: Now that the Hyperkit Go API has multiple disk support, this is now available from LinuxKit as well. (#2052 @justincormack). Vmnet support was also added to linuxkit run hyperkit to use the builtin OSX DHCP NAT (#2060 @justincormack).
vpnkit-expose-port option (#2048 @MagnusS @riyazdf @justincormack)library Hub org in examples to verify nginx, other official images (#2059 @justincormack)MirageSDK: replace custom transport protocol by Capnproto (#2040 @talex5 @rn), add an https example (#1981 @avsm @talex5 @justincormack) and work is continuing on making the DHCP client a dropin replacement for the current C version (@samoht)
A new Shiftfs project is available for mapping mountpoints across user namespaces (#2035 @tych0 @estesp @jejb @riyazdf)
Update security events with new kernels (#2030 @justincormack)
Kernel config project docs (#2042 @justincormack)
Add Packet.net documentation (#2057 #2046 @vielmetti @avsm)
Update AUTHORS (#2058 @justincormack)
Removed unused vendoring #2050 @justincormack
Improve fetching of results linuxkit-ci#8 @talex5
Other reports in this series can be browsed directly in the repository at linuxkit:/reports.