VOOZH about

URL: https://thenewstack.io/how-to-install-jenkins-x-on-an-existing-kubernetes-cluster/

⇱ How to Install Jenkins X on an Existing Kubernetes Cluster - The New Stack


TNS
SUBSCRIBE
Join our community of software engineering leaders and aspirational developers. Always stay in-the-know by getting the most important news and exclusive content delivered fresh to your inbox to learn more about at-scale software development.
REQUIRED
It seems that you've previously unsubscribed from our newsletter in the past. Click the button below to open the re-subscribe form in a new tab. When you're done, simply close that tab and continue with this form to complete your subscription.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.
Welcome and thank you for joining The New Stack community!
Please answer a few simple questions to help us deliver the news and resources you are interested in.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Great to meet you!
Tell us a bit about your job so we can cover the topics you find most relevant.
REQUIRED
REQUIRED
REQUIRED
REQUIRED
REQUIRED
Welcome!

We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.

What’s next?

Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.

Follow TNS on your favorite social media networks.

Become a TNS follower on LinkedIn.

Check out the latest featured and trending stories while you wait for your first TNS newsletter.

PREV
1 of 2
NEXT
VOXPOP
As a JavaScript developer, what non-React tools do you use most often?
Angular
0%
Astro
0%
Svelte
0%
Vue.js
0%
Other
0%
I only use React
0%
I don't use JavaScript
0%
Thanks for your opinion! Subscribe below to get the final results, published exclusively in our TNS Update newsletter:
NEW! Try Stackie AI
From clobbered drafts to real-time sync
Apr 14th 2026 10:00am, by David Moore
TypeScript 6.0 RC arrives as a bridge to a faster future
Mar 14th 2026 9:00am, by Darryl K. Taft
Mastra empowers web devs to build AI agents in TypeScript
Jan 28th 2026 11:00am, by Loraine Lawson
2019-11-23 09:51:25
How to Install Jenkins X on an Existing Kubernetes Cluster
tutorial,
CI/CD / Kubernetes

How to Install Jenkins X on an Existing Kubernetes Cluster

Nov 23rd, 2019 9:51am by Jack Wallen
👁 Featued image for: How to Install Jenkins X on an Existing Kubernetes Cluster
CloudBees is a sponsor of The New Stack.

First released in 2018, Jenkins X was created by James Strachan, creator of the Apache Groovy language. Currently managed by CloudBees, the purpose of this tool is to be a cloud-native, Kubernetes application to support CI/CD and simplify Kubernetes deployments. With just a single Jenkins X command, an admin can create a Kubernetes cluster, install the tools necessary to manage an application, create pipelines, and deploy an application to various environments.

Jenkins X is also an extensible automation server, configured by plugins, that function as a Continuous Integration (CI) server, a Continuous Deployment (CD) hub, and automated testing.

Jenkins X (also called JX) is easily installed on an existing cloud provider (such as Amazon Elastic Container Service for Kubernetes, Google Kubernetes Engine, or Microsoft Azure Kubernetes Service). Or, if you have an on-premises Kubernetes cluster, you can also make use of Jenkins X. With the jx command, you can quickly deploy clusters locally or to remote cloud providers (such as Google Cloud Platform).

I’m going to walk you through the process of installing Jenkins X on an existing Kubernetes cluster, running on Ubuntu Server 18.04.

What You’ll Need

I’m going to demonstrate deploying a Kubernetes cluster (using Jenkins X) both locally and to Google Cloud Platform. For this you’ll need:

  • A running instance of Ubuntu Server with Kubernetes installed.
  • A Google Cloud Platform account.
  • A user with sudo privileges.
  • A network connection.

Outside of that, just a little time.

Let’s make things happen.

Installing Jenkins X

Installing Jenkins X on Ubuntu is actually quite simple. The executable binary can be downloaded from the official Jenkins X GitHub page and then moved into the proper directory. To do this, either log into your server, via SSH, or into the console directly. Once you have a bash prompt for your server, issue the command:

curl -L "https://github.com/jenkins-x/jx/releases/download/$(curl --silent "https://github.com/jenkins-x/jx/releases/latest" | sed 's#.*tag/\(.*\)\".*#\1#')/jx-linux-amd64.tar.gz" | tar xzv "jx"

The above command will download the latest release of Jenkins X and then unpack the binary. Once the command completes, you should see an executable in the current working directory, named jx (Figure 1).

👁 Image

Figure 1: The jx binary, ready to be relocated.

To move the Jenkins X binary, issue the command:

sudo mv jx /usr/local/bin

If you opt to deploy a cluster using a virtual machine environment, you’ll have to have that installed as well. For this, you can always install KVM, KVM-2, or VirtualBox. To make this easy, we’ll install VirtualBox. This does install an X server, but you don’t have to use it.

In order to install VirtualBox, issue the command:

sudo apt-get install virtualbox -y

This installation will take some time. Let it finish. Next, you’ll want to install minikube on your Ubuntu Server (as that will be our provider). To do this, download the necessary file with the command:

wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

Change the permission of the downloaded file with the command:

chmod +x minikube-linux-amd64

Move (and rename) the file into the proper directory with the command:

sudo mv minikube-linux-amd64 /usr/local/bin/minikube

You should see that minikube is now installed with the command:

minikube version

The output will show the release number of minikube (Figure 2).

👁 Image

Figure 2: Minikube is installed and ready to go.

Deploying a Cluster with the jx Command

We’re now going to deploy a cluster. The cluster will use the minikube provider and VirtualBox as the driver. The command to deploy the cluster is:

jx create cluster minikube

You will be asked the following questions:

  • Amount of memory to apply to the cluster (default is 4096).
  • Number of cores to apply to the cluster (default is 3).
  • Disk size (default is 150GB).
  • Select driver (select from kvm, kvm2, virtualbox, none).

If you select the following options:

  • Memory 4096
  • Cores 3
  • Disk size 20GB
  • Driver virtualbox

The effective command would be:

minikube start --memory 4096 --cpus 3 --disk-size 20GB --vm-driver virtualbox --bootstrapper=kubeadm

You can also deploy a cluster on a local environment without using a driver (selecting the none option). To do this, you must run the jx command with sudo like so:

sudo jx create cluster minikube --local-cloud-environment=true

Effectively, the command that will be run is:

minikube start --memory 4096 --cpus 3 --disk-size 20GB --vm-driver none --bootstrapper=kubeadm

The jx command will take care of pulling all of the necessary images and deploy the configured cluster.

Deploy to Google Cloud

Let’s say you want to deploy your cluster to the Google Cloud Platform. Jenkins X makes this possible as well. Before you do this, you must first have the gcloud application Installed. To do this, go back to your terminal window and download the source file with the command:

wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-265.0.0-linux-x86_64.tar.gz

Unpack the file with the command:

tar -zxf google-cloud-sdk-*

Change into the newly created directory with the command:

cd google-cloud-sdk

Finally, run the installer with the command:

./install.sh

Once you’ve taken care of that, update all things gcloud with the command:

gcloud components update

Finally, you must login to your Google Cloud Platform account with the command:

gcloud auth login

A link will print out. Open that link in a browser, select the Google account you wish to use, and then copy the verification code you are given. Paste that code into the command prompt and hit Enter. You are now logged into your Google Cloud Platform account and can issue the command:

jx create cluster gke --skip-login

When prompted, make sure you select the Google Cloud Project you wish to use (Figure 3). 

👁 Image

Figure 3: Selecting a Google Cloud Project.

Once you’ve made your selection and hit Enter, you’ll be prompted to select a zone (Figure 4).

👁 Image

Figure 4: Selecting a zone for your cluster.

Next, you’ll be asked the Jenkins installation type (choose from Serverless Jenkins X Pipelines with Tekton or Static Jenks Server with Jenkinsfiles). Do note, when using tekton, only kaniko is supported as a builder.

You’ll then have to enter a name and email address to use with git and then acquire the necessary API key for your GitHub account. That’s it. The cluster will deploy and is ready to work for you.

And that’s the gist of installing and using Jenkins X on an existing Kubernetes Cluster. There’s so much more that this tool can do, so I highly recommend combing through the official documentation.

TRENDING STORIES
Jack Wallen is what happens when a Gen Xer mind-melds with present-day snark. Jack is a seeker of truth and a writer of words with a quantum mechanical pencil and a disjointed beat of sound and soul. Although he resides...
Read more from Jack Wallen
SHARE THIS STORY
TRENDING STORIES
SHARE THIS STORY
TRENDING STORIES
TNS DAILY NEWSLETTER Receive a free roundup of the most recent TNS articles in your inbox each day.
The New Stack does not sell your information or share it with unaffiliated third parties. By continuing, you agree to our Terms of Use and Privacy Policy.