+
marko
+
+
+
swift
0b
preact
jenkins
=>
::
+
+
ractive
delphi
+
play
delphi
+
sqlite
+
+
+
bash
actix
+
+
circle
+
ractive
+
yarn
influxdb
&
xgboost
influxdb
ember
+
+
+
+
+
nuxt
|>
+
+
+
+
+
+
+
bun
+
+
+
puppet
+
micronaut
+
!==
+
!
+
xml
+
puppet
+
+
+
c
+
+
marko
objc
+
#
<-
!
qwik
+
โІ
s3
+
+
+
hack
+
asm
+
aurelia
Back to Blog
๐Ÿš€ Jenkins CI/CD Automation Server Installation on AlmaLinux
jenkins cicd devops

๐Ÿš€ Jenkins CI/CD Automation Server Installation on AlmaLinux

Published Sep 14, 2025

Master Jenkins setup on AlmaLinux! Complete guide to install, configure, and automate CI/CD pipelines. Perfect for DevOps beginners and teams looking to streamline development workflows.

16 min read
0 views
Table of Contents

๐Ÿš€ Jenkins CI/CD Automation Server Installation on AlmaLinux

Ready to supercharge your development workflow? ๐ŸŽฏ Jenkins is the most popular automation server that helps teams build, test, and deploy code automatically! In this guide, weโ€™ll set up Jenkins on AlmaLinux and create your first CI/CD pipeline. Letโ€™s turn your manual deployment headaches into automated magic! โœจ

๐Ÿค” Why is Jenkins Important?

Jenkins transforms how development teams work by automating everything! ๐ŸŽช Hereโ€™s why millions of developers love it:

  • โšก Automated Builds: Code changes trigger automatic builds and tests
  • ๐Ÿ”„ Continuous Integration: Catch bugs early with automatic testing
  • ๐Ÿš€ Fast Deployments: Deploy to production with one click
  • ๐Ÿ“Š Team Collaboration: Everyone sees build status and results
  • ๐Ÿ›ก๏ธ Quality Control: Prevent broken code from reaching production
  • ๐Ÿ’ฐ Save Time & Money: Reduce manual work and human errors
  • ๐ŸŒ Works Everywhere: Deploy to any server or cloud platform

Think of Jenkins as your personal DevOps assistant that never sleeps! ๐Ÿค–

๐ŸŽฏ What You Need

Letโ€™s make sure youโ€™re ready for Jenkins installation! โœ…

  • โœ… AlmaLinux 8 or 9 server with internet connection
  • โœ… At least 2GB RAM (4GB recommended for better performance)
  • โœ… 10GB free disk space (more for large projects)
  • โœ… sudo privileges on your system
  • โœ… Basic knowledge of Linux command line
  • โœ… Java 11 or 17 (weโ€™ll install this together!)
  • โœ… Web browser to access Jenkins interface
  • โœ… 15 minutes of your time and enthusiasm! ๐ŸŽ‰

Donโ€™t worry if youโ€™re new to this - weโ€™ll explain every step! ๐ŸŒŸ

๐Ÿ“ Step 1: Prepare Your System

First, letโ€™s get your AlmaLinux system ready for Jenkins! ๐ŸŽฏ

# Update your system packages
sudo dnf update -y

# Install essential development tools
sudo dnf groupinstall -y "Development Tools"

# Install curl and wget for downloading files
sudo dnf install -y curl wget

Great job! ๐ŸŽ‰ Your system is now prepared for Jenkins installation.

๐Ÿ”ง Step 2: Install Java (Required for Jenkins)

Jenkins needs Java to run. Letโ€™s install OpenJDK 17! โ˜•

# Install OpenJDK 17 (recommended for Jenkins)
sudo dnf install -y java-17-openjdk java-17-openjdk-devel

# Verify Java installation
java -version

# Set JAVA_HOME environment variable
echo 'export JAVA_HOME=/usr/lib/jvm/java-17-openjdk' | sudo tee -a /etc/environment
source /etc/environment

# Check JAVA_HOME is set correctly
echo $JAVA_HOME

Expected Output:

openjdk version "17.0.8" 2023-07-18
OpenJDK Runtime Environment (build 17.0.8+7-RPM-1)

Perfect! โœ… Java is ready for Jenkins!

๐ŸŒŸ Step 3: Add Jenkins Repository

Letโ€™s add the official Jenkins repository to get the latest version! ๐Ÿ“ฆ

# Download and add Jenkins repository key
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

# Import Jenkins GPG key for security
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key

# Update package cache with new repository
sudo dnf update -y

Excellent! ๐ŸŽฏ Now we can install Jenkins from the official repository.

โœ… Step 4: Install Jenkins

Time to install the star of the show - Jenkins! ๐ŸŒŸ

# Install Jenkins automation server
sudo dnf install -y jenkins

# Start Jenkins service
sudo systemctl start jenkins

# Enable Jenkins to start automatically on boot
sudo systemctl enable jenkins

# Check Jenkins service status
sudo systemctl status jenkins

Expected Output:

โ— jenkins.service - Jenkins Continuous Integration Server
   Loaded: loaded (/usr/lib/systemd/system/jenkins.service; enabled)
   Active: active (running) since Mon 2025-09-14 10:00:00 UTC

Amazing! ๐ŸŽ‰ Jenkins is now running on your server!

๐Ÿ”ง Step 5: Configure Firewall

Letโ€™s open the firewall so you can access Jenkins from your web browser! ๐ŸŒ

# Open port 8080 for Jenkins web interface
sudo firewall-cmd --permanent --add-port=8080/tcp

# Reload firewall rules
sudo firewall-cmd --reload

# Verify port is open
sudo firewall-cmd --list-ports

Perfect! ๐Ÿ”“ Jenkins is now accessible from the web.

๐ŸŒŸ Step 6: Access Jenkins Web Interface

Time for the exciting part - accessing Jenkins! ๐ŸŽฏ

  1. Open your web browser ๐ŸŒ
  2. Navigate to: http://your-server-ip:8080
  3. Youโ€™ll see the Jenkins unlock screen ๐Ÿ”

Get the initial admin password:

# Display the initial admin password
sudo cat /var/lib/jenkins/secrets/initialAdminPassword

Copy this password - youโ€™ll need it for the setup wizard! ๐Ÿ“

โœ… Step 7: Complete Jenkins Setup Wizard

Follow these steps in your web browser: ๐ŸŽญ

  1. Paste the admin password and click โ€œContinueโ€
  2. Choose โ€œInstall suggested pluginsโ€ (easiest option for beginners)
  3. Wait for plugins to install (grab a coffee! โ˜•)
  4. Create your first admin user:
    • Username: admin
    • Password: YourSecurePassword123!
    • Full Name: Your Name
    • Email: [email protected]
  5. Configure Jenkins URL (usually auto-detected)
  6. Click โ€œStart using Jenkinsโ€ ๐Ÿš€

Congratulations! ๐ŸŽ‰ Jenkins is ready to automate your projects!

๐ŸŽฎ Quick Examples

Letโ€™s create some practical Jenkins automation examples! ๐ŸŽฏ

Example 1: Simple โ€œHello Worldโ€ Job

# In Jenkins web interface:
# 1. Click "New Item"
# 2. Name: "hello-world"
# 3. Select "Freestyle project"
# 4. In Build section, add "Execute shell":

echo "๐ŸŽ‰ Hello from Jenkins automation!"
echo "Build started at: $(date)"
echo "Running on server: $(hostname)"
echo "โœ… Automation is working perfectly!"

Example 2: Git Repository Build

# Create a job that builds from Git:
# 1. New Item โ†’ "git-build" โ†’ Freestyle project
# 2. Source Code Management โ†’ Git
# 3. Repository URL: https://github.com/username/project.git
# 4. Build section โ†’ Execute shell:

echo "๐Ÿ”„ Starting build from Git repository..."
ls -la
echo "๐Ÿ“ฆ Installing dependencies..."
# npm install  # For Node.js projects
# mvn compile  # For Java projects
echo "๐Ÿงช Running tests..."
# npm test     # For Node.js projects
echo "โœ… Build completed successfully!"

Example 3: Automated Deployment Pipeline

# Advanced pipeline with multiple stages:
#!/bin/bash

echo "๐Ÿš€ Starting deployment pipeline..."

# Stage 1: Code Quality Check
echo "๐Ÿ“Š Checking code quality..."
# Run linting, security scans

# Stage 2: Build Application
echo "๐Ÿ”ง Building application..."
# Compile code, create artifacts

# Stage 3: Run Tests
echo "๐Ÿงช Running comprehensive tests..."
# Unit tests, integration tests

# Stage 4: Deploy to Staging
echo "๐ŸŽญ Deploying to staging environment..."
# Deploy to test server

# Stage 5: Production Deployment
echo "๐ŸŒ Deploying to production..."
# Deploy to live server

echo "โœ… Pipeline completed successfully!"

๐Ÿšจ Fix Common Problems

Running into issues? Donโ€™t worry - letโ€™s fix them together! ๐Ÿ”ง

Problem 1: Jenkins Wonโ€™t Start

Symptoms: systemctl status jenkins shows failed status

Solution:

# Check Java installation
java -version

# Check Jenkins logs
sudo journalctl -u jenkins -f

# Fix permissions if needed
sudo chown -R jenkins:jenkins /var/lib/jenkins

# Restart Jenkins
sudo systemctl restart jenkins

Problem 2: Canโ€™t Access Web Interface

Symptoms: Browser canโ€™t connect to Jenkins

Solution:

# Check if Jenkins is running
sudo systemctl status jenkins

# Verify port 8080 is open
sudo ss -tlnp | grep 8080

# Check firewall settings
sudo firewall-cmd --list-ports

# Restart firewall if needed
sudo systemctl restart firewalld

Problem 3: โ€œPermission Deniedโ€ Errors

Symptoms: Jobs fail with permission errors

Solution:

# Add jenkins user to necessary groups
sudo usermod -a -G docker jenkins  # For Docker builds
sudo usermod -a -G wheel jenkins   # For sudo access

# Fix Jenkins home directory permissions
sudo chown -R jenkins:jenkins /var/lib/jenkins

# Restart Jenkins to apply changes
sudo systemctl restart jenkins

Problem 4: Out of Memory Errors

Symptoms: Jenkins becomes slow or crashes

Solution:

# Edit Jenkins configuration
sudo nano /etc/sysconfig/jenkins

# Increase memory settings
JENKINS_JAVA_OPTIONS="-Xmx2048m -XX:MaxPermSize=512m"

# Restart Jenkins
sudo systemctl restart jenkins

๐Ÿ“‹ Simple Commands Summary

Hereโ€™s your Jenkins command cheat sheet! ๐Ÿ“š

TaskCommandPurpose
Start Jenkinssudo systemctl start jenkinsStart the Jenkins service
Stop Jenkinssudo systemctl stop jenkinsStop the Jenkins service
Restart Jenkinssudo systemctl restart jenkinsRestart Jenkins (apply changes)
Check Statussudo systemctl status jenkinsView Jenkins service status
View Logssudo journalctl -u jenkins -fMonitor Jenkins logs in real-time
Get Admin Passwordsudo cat /var/lib/jenkins/secrets/initialAdminPasswordRetrieve initial setup password
Check Javajava -versionVerify Java installation
Check Portssudo ss -tlnp | grep 8080Verify Jenkins port is listening
Backup Jenkinssudo tar -czf jenkins-backup.tar.gz /var/lib/jenkinsCreate Jenkins backup
Update Jenkinssudo dnf update jenkinsUpdate to latest Jenkins version

๐Ÿ’ก Tips for Success

Make your Jenkins journey smooth with these pro tips! ๐ŸŒŸ

  • ๐Ÿ” Security First: Always use strong passwords and enable security features
  • ๐Ÿ”„ Regular Backups: Backup your Jenkins configuration weekly
  • ๐Ÿ“Š Monitor Resources: Keep an eye on CPU and memory usage
  • ๐ŸŽฏ Start Simple: Begin with basic jobs before complex pipelines
  • ๐Ÿ“š Learn Gradually: Master one feature at a time
  • ๐Ÿค Team Training: Ensure your team knows how to use Jenkins
  • ๐Ÿ”ง Plugin Management: Only install plugins you actually need
  • ๐Ÿ“ Document Everything: Keep notes about your pipeline configurations
  • ๐Ÿงช Test Thoroughly: Always test changes in staging first
  • ๐Ÿš€ Automate Everything: If you do it twice, automate it!

๐Ÿ† What You Learned

Look at everything youโ€™ve accomplished! ๐ŸŽ‰

  • โœ… Installed Jenkins automation server on AlmaLinux
  • โœ… Configured Java environment for optimal performance
  • โœ… Set up firewall rules for secure web access
  • โœ… Completed setup wizard and created admin account
  • โœ… Created your first job with automated builds
  • โœ… Built Git integration for continuous integration
  • โœ… Mastered troubleshooting common Jenkins issues
  • โœ… Learned best practices for production deployments
  • โœ… Gained DevOps skills that employers highly value
  • โœ… Automated manual tasks to save time and reduce errors

Youโ€™re now a Jenkins automation expert! ๐ŸŒŸ

๐ŸŽฏ Why This Matters

Your Jenkins skills open amazing opportunities! ๐Ÿš€

For Your Career:

  • ๐Ÿ’ผ DevOps engineers with Jenkins skills earn 25% more
  • ๐ŸŽฏ Companies desperately need automation experts
  • ๐ŸŒŸ Jenkins experience leads to senior developer roles
  • ๐Ÿค You can help teams deliver software faster

For Your Projects:

  • โšก Deploy code changes in minutes, not hours
  • ๐Ÿ›ก๏ธ Catch bugs before customers see them
  • ๐Ÿ“Š Get instant feedback on code quality
  • ๐ŸŽ‰ Focus on coding instead of manual deployment

For Your Team:

  • ๐Ÿš€ Increase deployment frequency by 10x
  • ๐Ÿ”ง Reduce deployment failures by 50%
  • ๐Ÿ˜Š Happier developers with less manual work
  • ๐Ÿ’ฐ Save thousands in operational costs

Youโ€™ve just learned one of the most valuable DevOps skills! ๐Ÿ†

Remember, every expert was once a beginner. You took the first step toward mastering CI/CD automation, and thatโ€™s something to be proud of! Keep experimenting, keep learning, and soon youโ€™ll be building complex deployment pipelines like a pro! โญ

Happy automating! ๐Ÿ™Œ