Uh oh!
There was an error while loading. Please reload this page.
chromium headless unikernel - #8
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
…s :/ kernel panic if the list of args is too long ``` [ 0.023198] Kernel panic - not syncing: Too many boot init vars at `/usr/bin/wrapper.sh' ```
| docker build --platform linux/amd64 -t "$IMAGE" . | ||
| docker rm cnt-"$app_name" || true | ||
| docker create --platform linux/amd64 --name cnt-"$app_name" "$IMAGE" /bin/sh | ||
| docker cp cnt-"$app_name":/ ./.rootfs | ||
| rm -f initrd || true | ||
| mkfs.erofs --all-root -d2 -E noinline_data -b 4096 initrd ./.rootfs |
There was a problem hiding this comment.
just to confirm: this difference from the headful image is due to requirements for erofs?
There was a problem hiding this comment.
yeah this is how the final filesystem for the vm is constructed. In the headful image we use kraft's built in support for Dockerfiles but that doesn't use erofs. So here we use the Dockerfile "by hand" and construct the root fs for the VM, and then reference that folder in the Kraftfile
Headless chromium image!
Main features:
./{build,run}-docker.sh) for local testing./{build,run}-unikernel.sh) uses erofs for max resource efficiency (erofs == memory on demand, cpio == first allocate all in memory, then use)