必须安装JDK 11并配置systemd托管,校验WAR包SHA256、放行8080/50000端口;因银河麒麟V10默认OpenJDK 1.8不兼容Jenkins 2.426+ LTS,需下载对应架构OpenJDK 11,设JAVA_HOME,创建jenkins用户与服务文件,启用firewalld端口后启动服务。

在银河麒麟操作系统V10 SP2/SP3上安装Jenkins持续集成工具,必须绕过系统默认JDK 1.8的兼容性限制,否则服务启动后几秒内就会崩溃并报错“Unsupported Java version”;同时需校验WAR包SHA256完整性、配置systemd托管、放行8080与50000端口,缺一不可。
安装适配的JDK 11运行环境
银河麒麟V10预装OpenJDK 1.8,但Jenkins 2.426+ LTS强制要求JDK 11或更高版本,直接使用系统默认Java会导致服务启动失败。
执行uname -m确认架构(x86_64 或 aarch64),下载对应OpenJDK 11压缩包,例如openjdk-11.0.20_linux-x64_bin.tar.gz。
创建统一Java安装目录:sudo mkdir -p /usr/java。
解压至指定路径:sudo tar -xzf openjdk-11.0.20_linux-x64_bin.tar.gz -C /usr/java/。
重命名解压目录为jdk-11.0.20,并验证版本:/usr/java/jdk-11.0.20/bin/java -version必须输出openjdk version "11.0.20";【若显示1.8或报command not found,请检查路径拼写与权限】。
获取并校验Jenkins官方WAR包
跳过麒麟软件源中陈旧的Jenkins 2.3xx版本,直接采用官网LTS WAR包可规避插件兼容性问题和启动卡死现象。
方法一:手动下载校验
创建部署目录:sudo mkdir -p /opt/jenkins → 进入目录:cd /opt/jenkins → 下载最新LTS版:sudo wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/latest/jenkins.war。
访问https://www.jenkins.io/changelog-stable/找到当前LTS版本页,复制其公布的SHA256摘要值。
执行sudo sha256sum jenkins.war,比对输出哈希值与官网一致;【不一致必须删除重下,否则启动时会因类加载异常退出】。
配置systemd服务实现稳定托管
用nohup启动Jenkins在麒麟OS下极易因SSH会话断开而终止进程,且无日志归集、无法自动重启。systemd是唯一可靠方案。
第一步:创建专用系统用户
sudo useradd -r -m -U -d /var/lib/jenkins -s /bin/false jenkins。
第二步:设置JENKINS_HOME权限
sudo chown -R jenkins:jenkins /var/lib/jenkins → sudo chmod -R 755 /var/lib/jenkins。
第三步:编写服务文件
执行sudo vim /usr/lib/systemd/system/jenkins.service,填入以下内容:
[Unit]Description=Jenkins Continuous Integration ServerAfter=network.target[Service]Type=simpleUser=jenkinsGroup=jenkinsEnvironment="JAVA_HOME=/usr/java/jdk-11.0.20"Environment="JENKINS_HOME=/var/lib/jenkins"ExecStart=/usr/java/jdk-11.0.20/bin/java -Djava.awt.headless=true -DJENKINS_HOME=/var/lib/jenkins -jar /opt/jenkins/jenkins.war --httpPort=8080 --ajp13Port=-1Restart=alwaysRestartSec=10StandardOutput=journalStandardError=journal[Install]WantedBy=multi-user.target
放行防火墙端口并启动服务
银河麒麟默认启用firewalld,未放行端口将导致浏览器无法访问Jenkins Web界面。
执行以下两条命令放行必需端口:sudo firewall-cmd --add-port=8080/tcp --permanent → sudo firewall-cmd --add-port=50000/tcp --permanent。
重载防火墙配置:sudo firewall-cmd --reload。
重新加载systemd配置并启动服务:sudo systemctl daemon-reload → sudo systemctl enable --now jenkins。
验证服务状态:sudo systemctl status jenkins,看到active (running)且无红色error日志即表示成功。











