Science and technology

Set up Minishift and run Jenkins on Linux

Minishift is a device that helps you run OKD (Red Hat’s open supply OpenShift container platform) regionally by launching a single-node OKD cluster inside a digital machine. It is powered by Kubernetes, which is certainly one of my favourite issues to speak about.

In this text, I’ll show how one can get began with Minishift on Linux. This was written for Ubuntu 18.04, and you may want sudo access in your Linux machine to run some instructions.

Prerequisites

Before beginning the set up, your Linux machine should have both KVM for Linux or VirtualBox, which runs on each platform. This demo makes use of KVM, which you’ll set up together with all of the required dependencies:

$ sudo apt set up qemu-kvm
libvirt-clients libvirt-daemon-system
bridge-utils virt-manager  

After putting in KVM, you have to make some modifications to permit your consumer to make use of it. Specifically, you have to add your consumer identify to the libvirt group:

$ sudo usermod --append --groups libvirt $(whoami)
$ newgrp libvirt

Next, set up the Docker KVM driver, which is required to run containers on Minishift. I downloaded the Docker machine driver on to /usr/native/bin. You haven’t got to reserve it to /usr/native/bin, however you have to be certain that its location is in your PATH:

$ curl -L https://github.com/dhiltgen/docker-machine-kvm/releases/obtain/v0.10.zero/docker-machine-driver-kvm-ubuntu16.04
-o /usr/native/bin/docker-machine-driver-kvm

$ sudo chmod +x /usr/native/bin/docker-machine-driver-kvm

Install Minishift

Now that the conditions are in place, go to the Minishift releases page and decide which model of Minishift you wish to set up. I used Minishift v1.34.3.

Download the Linux .tar file to a listing it is possible for you to to seek out simply. I used the minishift listing:

$ ls
Minishift-1.34.Three-linux-amd64.tgz

Next, untar your new file utilizing the tar command:

$ tar zxvf minishift-1.34.Three-linux-amd64.tgz
minishift-1.34.Three-linux-amd64/
minishift-1.34.Three-linux-amd64/LICENSE
minishift-1.34.Three-linux-amd64/README.adoc
minishift-1.34.Three-linux-amd64/minishift

By utilizing the v (for verbose) choice in your command, you may see all of the information and their areas in your listing construction.

Run the ls command to verify that the brand new listing was created:

$ ls
minishift-1.34.Three-linux-amd64

Next, change to the brand new listing and discover the binary file you want; it’s named minishift:

$ cd minishift-1.34.Three-linux-amd64
$ ls
LICENSE  minishift  README.adoc
$

Move the minishift binary file to your PATH, which you’ll find by working the next and looking out on the output:

$ echo $PATH
/dwelling/jess/.native/bin:/usr/native/sbin:/usr/native/bin

I used /usr/native/bin because the minishift binary file’s location:

$ sudo mv minishift /usr/native/bin
[sudo] password for jess:
$ ls /usr/native/bin
minishift

Run the minishift command and have a look at the output:

$ minishift
Minishift is a command-line device that provisions and manages single-node OpenShift clusters optimized for improvement workflows.

Usage:
  minishift [command]

Available Commands:
  addons        Manages Minishift add-ons.
  completion  Outputs minishift shell completion for the given shell
  config        Modifies Minishift configuration properties.
  console       Opens or shows the OpenShift Web Console URL.
[...]

Use "minishift [command] --help" for extra details about a command.

Log into Minishift’s internet console

Now that Minishift is put in, you may stroll by it and play with some cool new software program. Begin with minishift begin. This, as you may guess, begins Minishift—particularly, it begins a one-node cluster in your laptop:

$ minishift begin
  Starting profile 'minishift'
  Check if deprecated choices are used … OK
  Checking if https://github.com is reachable … OK
[...]
  Minishift will probably be configured with…
  Memory: 4GB
  vCPUs : 2GB
  Disk measurement: 20 GB
Starting Minishift VM ……….OK

This course of can take a very long time, relying in your , so be affected person. When it ends, you may get details about the place to seek out your imaginary cluster in your virtualized community:

Server Information ...
MiniShift server began.
The server is accessible by way of internet console at:
https://192.168.42.66:8443/console

Now, MiniShift is working, full with an internet console. You can log into the OKD console utilizing developer because the consumer identify and any password you need. I selected developer / developer.

The internet console is a simple management panel you should utilize to manage your humble cluster. It’s a spot so that you can create and cargo container photographs, add and monitor pods, and guarantee your occasion is wholesome.

Build a pipeline

To begin constructing your first pipeline, click on Pipeline Build Example on the console. Click Next to indicate the parameters out there to create the pipeline undertaking.

A window seems with parameters to fill in in order for you; you should utilize what’s already there for this instance. Walk by the remainder of the display screen selections to create a pattern pipeline.

Click Create, and let Minishift create the undertaking for you. It exhibits your success (or failure).

You may click on Show Parameters and scroll by the listing of parameters configured for this undertaking. Click Close and search for a affirmation message on the left. 

When you click on on My Project, you may see the main points and pods created for the undertaking to run.

Open the jenkins-ephemeral hyperlink that was generated. Log in once more with the developer credentials and permit entry to run a pipeline in Jenkins.

Now you may look by the Jenkins interface to get a really feel for what it has to supply.

Find your undertaking.

When you are prepared, click on Build Now.

Then you may view the job’s output within the console output.

Once the job completes efficiently, you will note a hit message on the backside of the console.

What did this pipeline do? It up to date the deployment manually.

Congratulations, you efficiently created an instance automated deployment utilizing Minishift!

Clean it up

The final thing to do is to wash up the whole lot by working two instructions:

$ minishift cease
$ minishift delete

Why cease after which delete? Well, I like to verify nothing is working earlier than I run a delete command of any type. This ends in a cleaner delete with out the potential of having any leftover or hung processes. Here are the instructions’ output.

Final notes

Minishift is a good device with nice built-in automation. The consumer interface is comfy to work with and simple on the eyes. I discovered it a enjoyable new device to play with at dwelling, and if you wish to dive in deeper, simply look over the nice documentation and lots of online tutorials. I like to recommend exploring this software in depth. Have a contented time Minishifting!

Most Popular

To Top