app-helloworld-go
pykraft
app-helloworld-go | pykraft | |
---|---|---|
1 | 2 | |
16 | 174 | |
- | - | |
4.2 | 0.0 | |
7 months ago | over 1 year ago | |
Go | Python | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
app-helloworld-go
-
Unikraft Posix Like Unikernel
A compelling introduction and explanation of Unikraft took place at USENIX LISA '18:
https://www.youtube.com/watch?v=9PRKBZHArhI
I don't know if I'm a huge fan of the website that was posted here (the quick start doesn't actually show a python application, which is a bit odd), but Unikraft occupies an interesting spot in the unikernel landscape, it's very promising.
Here are all some interesting languages/programs you can use it with:
- https://github.com/unikraft/app-helloworld-go
- https://github.com/unikraft/app-micropython
- https://github.com/unikraft/app-nginx
- https://github.com/unikraft/app-ruby
- https://github.com/unikraft/app-lua
- https://github.com/unikraft/app-redis
- https://github.com/unikraft/app-python3
If you're interested in Unikernels, some more interesting/close-to-production-ready entries in the space worth watching:
- https://github.com/rumpkernel/rumprun-packages (hasn't seen much work recently unfortunately)
- https://ssrg-vt.github.io/hermitux/
- https://github.com/hermitcore/rusty-hermit
Yet another interesting
pykraft
-
Unikraft is a fast, secure and open-source Unikernel Development Kit
1. We build unikernels using the 'kraft container' which is Docker/OCI image[0][1] which has the necessary build tools to build Unikraft unikernels. We plug this into Concourse which builds thousands of combinations of Unikernels[2] as part of our code review process[3]. In addition to this, we have on-going research and tooling to help automatically discover permutations of Unikernel builds[4].
2. Really great question, but mostly you can expect the same functionality of an application when it runs as a unikernel because the application "thinks" it's still running in a traditional OS environment -- as it should be. Check out this documentation[5] (after step 7) about porting, it has snippets about where the boundary sometimes breaks.
3. Well, general-purposes are not suited for deployment environments. Installing Gentoo (or Ubuntu, Debian, for that matter) is a waste of resources if you only SSH in once to install your desired application.
[0]: https://unikraft.org/docs/usage/install/#docker
[1]: https://github.com/unikraft/kraft/tree/staging/package/docke...
[2]: https://builds.unikraft.io
[3]: https://unikraft.org/docs/contributing/review-process/#stage...
[4]: https://github.com/lancs-net/wayfinder
[5]: https://unikraft.org/docs/develop/porting/#providing-build-f...
- Unikraft Posix Like Unikernel
What are some alternatives?
app-nginx - Nginx on Unikraft
app-click - Click Modular Router on Unikraft
ops-examples - A repository of basic and advanced examples using Ops
click - The Click modular router: fast modular packet processing and analysis
eggos - A Go unikernel running on x86 bare metal
nanos - A kernel designed to run one and only one application in a virtualized environment
DrawBridge - Research on DrawBridge Library OS, which is base building block for MSSQL on Linux
wayfinder - wayfinder: OS Configuration Micro-Benchmarking Framework
v2ray-core - A platform for building proxies to bypass network restrictions.
unikraft - A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.
app-python3 - Unikraft Python3 app repo
unikraft - FlexOS is a Unikraft-based OS allowing users to easily specialize the safety and isolation strategy at compilation time.