In this guide we create and deploy a simple Java-based HTTP web server.
To run this example, follow these steps:
Install the kraft CLI tool and a container runtime engine, e.g. Docker.
Clone the examples repository and cd into the examples/http-java17/ directory:
Make sure to log into Unikraft Cloud by setting your token and a metro close to you.
We use fra0 (Frankfurt, 🇩🇪) in this guide:
When done, invoke the following command to deploy this application on Unikraft Cloud:
The output shows the instance URL and other details:
In this case, the instance name is http-java17-xx739 and the URL is https://bold-voice-irwjijr5.fra0.kraft.host.
They are different for each run.
Use curl to query the Unikraft Cloud instance of the Java-based HTTP web server:
At any point in time, you can list information about the instance:
When done, you can remove the instance:
Customize your Application
To customize the application, update the files in the repository, listed below:
SimpleHttpServer.java: the actual Java HTTP server
Kraftfile: the Unikraft Cloud specification
Dockerfile: the Docker-specified application filesystem
COPY ./SimpleHttpServer.java /src/SimpleHttpServer.java: Copy the server implementation file in the Docker filesystem.
RUN javac SimpleHttpServer.java: Compifile the Java source file.
The following options are available for customizing the application:
If only updating the implementation in the SimpleHttpServer.java source file, no other change is required.
If new files are added, these have to be copied in the application filesystem, using the COPY command in the Dockerfile.
If a new Java source files is added, update the cmd line in the Kraftfile and replace SimpleHttpServer.java to run that file when creating the instance.