目錄
一、當前系統環境
二、安裝Java
二、安裝Jenkins
三、使用systemctl管理
一、當前系統環境
操作系統:ubuntu 24.04
Jenkins版本:2.506 格式:war
JDK版本:OpenJDK_17
二、安裝Java
1.下載jdk安裝包
# wget下載
wget https://mirrors.tuna.tsinghua.edu.cn/Adoptium/17/jdk/x64/linux/OpenJDK17U-jdk_x64_linux_hotspot_17.0.14_7.tar.gz
2.創建java目錄并解壓壓縮包
# 解壓JDK到指定目錄
sudo mkdir -p /usr/local/java
sudo tar -zxf OpenJDK17U-jdk_x64_linux_hotspot_17.0.14_7.tar.gz -C /usr/local/java --strip-components 1
3.設置java環境變量
vim /etc/profile
在最末尾添加下面的內容 ?
# Java environment
export JAVA_HOME=/usr/local/java
export PATH=$PATH:${JAVA_HOME}/bin
4.使環境變量生效?
source /etc/profile
5.驗證安裝是否生效
java -version
root@ubuntu01:/# java -version
openjdk version "17.0.14" 2025-01-21
OpenJDK Runtime Environment Temurin-17.0.14+7 (build 17.0.14+7)
OpenJDK 64-Bit Server VM Temurin-17.0.14+7 (build 17.0.14+7, mixed mode, sharing)
root@ubuntu01:/#
二、安裝Jenkins
1.創建運行jenkins的用戶和組
useradd -m jenkins
2.創建jenkins的home目錄
mkdir -p /usr/local/jenkins/
3.下載Jenkins最新war包
cd /usr/local/jenkins
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.506/jenkins.war
4.設置文件夾權限
chown -R jenkins:jenkins /usr/local/jenkins
chmod +x -R /usr/local/jenkins
5.啟動測試
# 導入JENKINS_HOME環境變量
export JENKINS_HOME=/usr/local/jenkins# 啟動Jenkins
java -jar jenkins.war --httpPort=8888
三、使用systemctl管理
1.創建服務文件
vim /usr/lib/systemd/system/jenkins.service
要在Environment指明JENKINS_HOME實際目錄,默認是用戶home目錄下的.jenkins文件夾ExecStart里面所有目錄都使用絕對路徑,包括java和war包所在的路徑。
[Unit]
Description=Jenkins Continuous Integration Server
After=network.target[Service]
Type=simple
User=jenkins
Environment="JENKINS_HOME=/var/lib/jenkins"
ExecStart=/usr/local/java/bin/java -Dhudson.model.DownloadService.noSignatureCheck=true -jar /usr/local/jenkins/jenkins.war --httpPort=8888
Restart=on-failure[Install]
WantedBy=multi-user.target
2.添加文件執行權限
chmod +x /usr/lib/systemd/system/jenkins.service
3.重新加載systemctl 并啟動服務
systemctl daemon-reload && systemctl start jenkins
4.查看jenkins運行狀態
systemctl status jenkins
root@ubuntu01:/# systemctl status jenkins
● jenkins.service - JenkinsLoaded: loaded (/usr/lib/systemd/system/jenkins.service; disabled; preset: enabled)Active: active (running) since Wed 2025-04-23 10:27:37 CST; 7min agoMain PID: 90424 (java)Tasks: 44 (limit: 4552)Memory: 375.1M (peak: 386.7M)CPU: 16.396sCGroup: /system.slice/jenkins.service└─90424 /usr/local/java/bin/java -Dhudson.model.DownloadService.noSignatureCheck=true -jar /usr/local/jenkins/jenkins.war --httpPort=8888Apr 23 10:27:43 ubuntu01 java[90424]: 2025-04-23 02:27:43.144+0000 [id=31] INFO jenkins.InitReactorRunner$1#onAttained: Prepared all plugins
Apr 23 10:27:43 ubuntu01 java[90424]: 2025-04-23 02:27:43.178+0000 [id=30] INFO jenkins.InitReactorRunner$1#onAttained: Started all plugins
Apr 23 10:27:43 ubuntu01 java[90424]: 2025-04-23 02:27:43.194+0000 [id=30] INFO jenkins.InitReactorRunner$1#onAttained: Augmented all extensions
Apr 23 10:27:43 ubuntu01 java[90424]: 2025-04-23 02:27:43.519+0000 [id=29] INFO h.p.b.g.GlobalTimeOutConfiguration#load: global timeout not set
Apr 23 10:27:44 ubuntu01 java[90424]: 2025-04-23 02:27:44.767+0000 [id=31] INFO jenkins.InitReactorRunner$1#onAttained: System config loaded
Apr 23 10:27:44 ubuntu01 java[90424]: 2025-04-23 02:27:44.768+0000 [id=31] INFO jenkins.InitReactorRunner$1#onAttained: System config adapted
Apr 23 10:27:44 ubuntu01 java[90424]: 2025-04-23 02:27:44.794+0000 [id=29] INFO jenkins.InitReactorRunner$1#onAttained: Loaded all jobs
Apr 23 10:27:44 ubuntu01 java[90424]: 2025-04-23 02:27:44.805+0000 [id=30] INFO jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated
Apr 23 10:27:44 ubuntu01 java[90424]: 2025-04-23 02:27:44.849+0000 [id=29] INFO jenkins.InitReactorRunner$1#onAttained: Completed initialization
Apr 23 10:27:44 ubuntu01 java[90424]: 2025-04-23 02:27:44.888+0000 [id=23] INFO hudson.lifecycle.Lifecycle#onReady: Jenkins is fully up and running
root@ubuntu01:/#
5.查看服務日志
journalctl -u jenkins.service --reverse
6.設置開機自啟
systemctl enable jenkins