DEV Community

loading...
Cover image for 🌟Install Jenkins in Windows Subsystem for Linux (WSL2)

🌟Install Jenkins in Windows Subsystem for Linux (WSL2)

XinyuStudio
・3 min read

Jenkins

Jenkins is one of the most popular tools DevOps tools, originally designed with one purpose in mind: be a great build automation server. It’s free and open-source, built for developers, and has lots and lots of plugins that you can configure to build anything.

Although Jenkins can be deployed to lots of public clouds like AWS, GCP or Azure, running a local Jenkins server still has its own advantages and values. Speeds and easy for experimentation are just two of the most important ones.

Windows Subsystem for Linux

The Windows Subsystem for Linux (WSL) lets developers run a GNU/Linux environment -- including most command-line tools, utilities, and applications -- directly on Windows, unmodified, without the overhead of a traditional virtual machine or dual-boot setup.

WSL 2 is a new version of the Windows Subsystem for Linux architecture that powers the Windows Subsystem for Linux to run ELF64 Linux binaries on Windows. Its primary goals are to increase file system performance, as well as adding full system call compatibility.

Install WSL2 on Windows

For the full instructions to install WSL2 on windows, refer to this link or this one

Mix together: Install Jenkins in Windows Subsystem for Linux

This blog will focus on putting all the nice stuffs together: Windows + Ubuntu + Jenkins.

image

Open a terminal in Windows

Open a new Ubuntu terminal (I am using Windows Terminal, but you can use whatever terminal tools like blow excellent candidates)

image

Update Ubuntu in WSL2

Below here are the quick scripts for updating Ubuntu in WSL2:

sudo -s
apt-get update
apt-get -y install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
apt-get update
Enter fullscreen mode Exit fullscreen mode

Install Java and Jenkins in WSL2

sudo apt install openjdk-8-jdk           # choose this or next line
sudo apt install openjdk-11-jre-headless # or Install Java 11 JDK/JRE
sudo apt install Jenkins
Enter fullscreen mode Exit fullscreen mode

You will get an error like below:

image

To solve this, run the below script:

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add
sudo bash -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt update
sudo apt-get install jenkins
Enter fullscreen mode Exit fullscreen mode

With this, ~ 68MB Jenkins package will be downloaded, it will take a while depending on the internet speeds.

Update Firewall to enable Jenkins service

sudo ufw enable
sudo ufw allow 8080 # whatever port number you like
Enter fullscreen mode Exit fullscreen mode

Check the status of your port:

sudo ufw status
Enter fullscreen mode Exit fullscreen mode

Run Jenkins server

sudo service jenkins start
Enter fullscreen mode Exit fullscreen mode

Install Jenkins from a browser

Navigate to your host browser, and type:

http://localhost:8080/
Enter fullscreen mode Exit fullscreen mode

You will see the screen as below:

image

where you will be prompted to provide an initial password to unlock Jenkins.

Follow up the screen instructions and in the terminal, type below:

sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Enter fullscreen mode Exit fullscreen mode
  • Copy the password you retrieved to clipboard
    image

  • Return to the host browser window, and paste the password therein

  • Click "Continue" button!

Follow the screen instructions to create an account. Hooray!

image

Discussion (2)

Collapse
davidkou profile image
XinyuStudio Author

Thanks Chupavn!

Collapse
chupavn profile image
chupavn • Edited

Great! 👍