Skip to content

Commit b841e3e

Browse files
committed
Extend README.md
Extend README.md with more info about the project. Signed-off-by: Sergio Lopez <[email protected]>
1 parent bddd32c commit b841e3e

File tree

1 file changed

+63
-0
lines changed

1 file changed

+63
-0
lines changed

README.md

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,66 @@
11
# krunvm
22

33
```krunvm``` is a CLI-based utility for managing lightweight VMs created from OCI images, using [libkrun](https://github.com/containers/libkrun) and [buildah](https://github.com/containers/buildah).
4+
5+
## Features
6+
7+
* Minimal footprint
8+
* Fast boot time
9+
* Zero disk image maintenance
10+
* Zero network configuration
11+
* Support for mapping host volumes into the guest
12+
* Support for exposing guest ports to the host
13+
14+
## Demo
15+
16+
[![asciicast](https://asciinema.org/a/CGtTS93VsdzWwUfkY1kqVnaik.svg)](https://asciinema.org/a/CGtTS93VsdzWwUfkY1kqVnaik)
17+
18+
## Installation
19+
20+
### macOS
21+
22+
```
23+
brew tap slp/krun
24+
brew install krunvm
25+
```
26+
27+
### Fedora
28+
29+
```
30+
dnf copr enable slp/libkrunfw
31+
dnf copr enable slp/libkrun
32+
dnf copr enable slp/krunvm
33+
dnf install krunvm
34+
```
35+
36+
### Building from sources
37+
38+
#### Dependencies
39+
40+
* Rust Toolchain
41+
* [libkrun](https://github.com/containers/libkrun)
42+
* [buildah](https://github.com/containers/buildah)
43+
44+
#### Building
45+
46+
```
47+
cargo build --release
48+
```
49+
50+
## Limitations
51+
52+
### Networking
53+
54+
#### Networking support is limited to TCP IPv4
55+
56+
The current implementation of TSI (Transparent Socket Impersonation)
57+
in libkrun is limited to TCP and IPv4. This is expected to improve
58+
soon.
59+
60+
#### Domain name resolution is broken on musl-based distributions
61+
62+
As a consequence of the previous point, libkrun-based VMs need to use
63+
TCP for connecting to the DNS servers. **musl libc** does not support
64+
domain name resolution using TCP, so on distributions based on this
65+
library (such as Alpine), name resolution is broken.
66+

0 commit comments

Comments
 (0)