We encourage you to split into teams of 2-4 people, for both the tutorials and the hackathon challenges.
You can use the #hack-team-XX-voice
channels on the Discord server.
You will need a Linux environment for this session.
You can use a virtual machine, but we strongly recommend a native Linux install.
We provide you with a virtual machine that has the minimum requirements already installed.
The credentials for the virtual machine are unikraft:unikraft
.
You will need to install the following packages:
build-essential
/ base-devel
/ @development-tools
(the meta-package that includes make
, gcc
and other development-related packages)gcc-aarch64-linux-gnu
sudo
flex
bison
git
wget
uuid-runtime
qemu-system-x86
qemu-system-arm
qemu-kvm
sgabios
On Ubuntu, Debian, and other apt
-based distributions, you can use the following command to install the requirements:
sudo apt install -y --no-install-recommends \build-essential \sudo \gcc-aarch64-linux-gnu \libncurses-dev \libyaml-dev \flex \bison \git \wget \uuid-runtime \qemu-kvm \qemu-system-x86 \qemu-system-arm \sgabios
For running Unikraft with networking support, you will also need to configure QEMU to allow network bridge access:
sudo mkdir /etc/qemu/echo "allow all" | sudo tee /etc/qemu/bridge.conf
app-helloworld
on Unikraft#The Unikraft helloworld
application is located in this repository, along with instructions on how to configure, build and run the application.
We will go through them without focusing that much on the details, since we will see how everything works behind the scenes in the next sessions.
Go through the repository README.md
file and run your first Unikraft unikernel.
Now that you've seen how to run Unikraft helloworld
, you can go through the list below, follow the same steps and try more applications.
All the steps required for running the applications can be found in every app repository README.md
file.
Feel free to ask questions, report issues, and meet new people.