Unikraft and Algebra University, Croatian Association for Open Systems and Internet – HrOpen, National University of Science and Technology POLITEHNICA of Bucharest (NUSTPB), Romanian Open Source Education (ROSEdu) come together to organize the Zagreb Unikraft Hackathon to be held on Saturday and Sunday, May 18-19, 2024.
The hackathon will be organized as part of the DORS/CLUC 2024 event.
The hackathon will take place as an in-person event at the Algebra University. The full address is Algebra University, Gradišćanska 24, 10000, Zagreb, Croatia
Support information and discussions will take place on Discord, on the #hack-zagreb24
channel.
To take part in the hackathon please fill this registration form by Sunday, May 12, 2024, 11pm CEST.
Please bring your own laptop. It's best if you have a native Linux installed on your laptop. Otherwise, please install this virtual machine. Use VMware Workstation Player or VirtualBox or any other virtualization solution able to load an OVA image.
For the virtual machine, login with username unikraft
and password unikraft
.
Make sure you have a working networking connection inside the virtual machine.
Either on your native Linux install, or on your virtual machine, install the basic set of tools detailed in the "Overview" guide. Also, please make sure you have KraftKit installed on your system. Follow the instructions here.
The hosts of the hackathon are:
As part of the Unikraft community, Răzvan Deaconescu, Cezar Crăciunoiu, Ștefan Jumărea and Radu Nichita will be on-site.
Time (CEST) | Session |
---|---|
09:00-09:30 | Introduction to Unikernels and Cloud Computing |
09:30-11:00 | Deploying Cloud Applications using KraftCloud |
11:00-12:30 | Behind the Scenes: Using KraftKit to Operate Unikraft Applications |
12:30-14:00 | Lunch |
14:00-15:00 | Using Docker and Docker-based Filesystems |
15:00-16:00 | Debugging Unikraft / KraftCloud Applications |
16:00-18:00 | Hackathon start: Announce Teams and Projects. Start Coding |
Time (CEST) | Session |
---|---|
09:00-12:30 | Hackathon: Work on Project |
12:30-14:00 | Lunch |
14:00-16:00 | Hackathon: Work on Project |
16:00-18:00 | Judging and Award Ceremony |
If you did not create an account already, signup here and get a token
.
You will be using that in the following sessions.
Once you have a token, follow the steps here to deploy your first unikernel. If everything went well, deploy more applications following the tasks here.
In the previous session, you deployed application using KraftCloud.
Now you will build and run Unikraft-based application locally.
With this, you will get a better look at what kraft cloud
does behind the scenes.
Follow the steps here and bring the cloud to your machine.
After you are done with all of them, take a look to some more applications, following the tasks here.
Go through them orderly and aim to complete all items until the Extra
section.
If you have extra time on your hands, go through the Extra
section as well.
In order to bring your own application on KraftCloud, you need to build a minimal required filesystem.
We do that using docker
.
This is useful both to understand what is happening behind the scenes and to have a test environment for your application.
In case there are issues with KraftCloud / KraftKit, you can use Docker to see if everything is in the right place and to assist in debugging.
Follow the steps here (only the ones under Redis
) to see how you can port a new application on top of Unikraft.
Mark the items as completed here.
Go through them orderly and aim to complete all items until the Extra
section.
If you have extra time on your hands, go through the Extra
section as well.
When porting new applications, you can run into issues both on the Docker build and on the Unikraft runtime. To debug the issues, you can follow the instructions here. Get a hands-on experience with debugging by following the items here.
For the hackathon, please create teams of 2-3 people, and create your very own cloud-native application to run on KraftCloud. Think of a cool application you've been waiting for a while to implement. Use your preferred programming language (supported by KraftCloud), employ any frameworks or existing software components as required, and then deploy it on KraftCloud. After you create a team and decide on a project, fill this spreadsheet with the team name, members and project idea.
At the and of the hackathon, you should make a PR in the KraftCloud examples
repository with your work.
We will be evaluating the project, focusing on functionality, originality, robustness, complexity, code quality and team work.
Feel free to ask questions, report issues, and meet new people.