To execute all the necessary steps of the tutorial, you will need the following software available on your machine:
- Java: JDK17 or later. We recommend OpenJDK.
- Maven
- Node.js
- Docker
- Docker Hub Account
- Kubernetes CLI
- Kubernetes OpenID Connect (OIDC) authentication
- jq
- uuidgen
We recommend using a Linux subsystem for the tutorial as our scripts are only available as bash scripts. Furthermore, most of the examples around Kubernetes, for example, are written for Linux/MacOs environments. See Install WSL in the Microsoft documentation for more details.
We recommend using Ubuntu 22.04, as older versions do not support OpenJDK11 or later. If you have chosen to use the Linux, you need to choose the Linux installation option for the following tools.
You can choose any JDK provider that you prefer. We recommend using OpenJDK. Make sure that you have at least JDK17 installed.
To verify your installation, type the following in a shell:
java -version
The output should look like this:
openjdk version "17-ea" 2021-09-14
OpenJDK Runtime Environment (build 17-ea+19-Ubuntu-1ubuntu1)
OpenJDK 64-Bit Server VM (build 17-ea+19-Ubuntu-1ubuntu1, mixed mode, sharing)
You can download the latest version available from Installing Apache Maven.
To verify your installation, type the following in a shell:
mvn -v
The output should look like this:
Apache Maven 3.6.3
Maven home: /usr/share/maven
Java version: 17-ea, vendor: Private Build, runtime: /usr/lib/jvm/java-17-openjdk-amd64
Default locale: en, platform encoding: UTF-8
OS name: "linux", version: "5.4.72-microsoft-standard-wsl2", arch: "amd64", family: "unix"
You can download the latest Node.js version from Node.js Downloads.
To verify your installation, type the following in a shell:
node -v
The output should look like this:
v21.1.0
You can download the Kubernetes command line tool, from kubectl.
To verify your installation, type the following in a shell:
kubectl version
The output should look like this:
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.3", GitCommit:"ca643a4d1f7bfe34773c74f79527be4afd95bf39", GitTreeState:"clean", BuildDate:"2021-07-15T21:04:39Z", GoVersion:"go1.16.6", Compiler:"gc", Platform:"linux/amd64"}
To login to your Kyma Cluster you also need the OpenID Connect plugin for the Kubectl. The plugin can be installed as described here.
You can install Docker from Docker Hub.
To verify your installation, type the following in a shell:
docker version
The output should look like this:
Client: Docker Engine - Community
Cloud integration: 1.0.17
Version: 20.10.8
API version: 1.41
Go version: go1.16.6
Git commit: 3967b7d
Built: Fri Jul 30 19:54:02 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.8
API version: 1.41 (minimum version 1.12)
Go version: go1.16.6
Git commit: 75249d8
Built: Fri Jul 30 19:52:10 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.9
GitCommit: e25210fe30a0a703442421b0f60afac609f950a3
runc:
Version: 1.0.1
GitCommit: v1.0.1-0-g4144b63
docker-init:
Version: 0.19.0
GitCommit: de40ad0
To be able to deploy the application, you will first need a place to store your images. If you don't have an image repository already available in your company, you can create a Docker Hub Account to store the images.
jq is a lightweight and flexible command-line JSON processor for UNIX.
It will be needed by calling manual or script-based deployment.
-
Check if you have jq installed:
jq --version
-
If you need to install it, you can do this with the following command:
sudo apt-get install jq
-
Check if you have uuidgen installed (already installed by default on Mac):
uuidgen
-
If you need to install it, you can do this with the following command:
sudo apt-get install uuid-runtime
Choose one of the options to get the sources on your local disk: