<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>CI/CD on TiJet</title><link>https://www.tainuohc.com/en/categories/ci/cd/</link><description>Recent content in CI/CD on TiJet</description><generator>Hugo</generator><language>en</language><lastBuildDate>Tue, 04 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://www.tainuohc.com/en/categories/ci/cd/index.xml" rel="self" type="application/rss+xml"/><item><title>Jenkins CI/CD Hands-On: Building an Automated Pipeline from Scratch</title><link>https://www.tainuohc.com/en/blog/2026-08-04-jenkins-cicd/</link><pubDate>Tue, 04 Aug 2026 00:00:00 +0000</pubDate><guid>https://www.tainuohc.com/en/blog/2026-08-04-jenkins-cicd/</guid><description>&lt;h2 id="1-why-jenkins">1. Why Jenkins&lt;/h2>
&lt;p>&lt;strong>Jenkins&lt;/strong> is an open-source CI/CD tool. Its core purpose: after code is pushed to a Git repository, automatically run &amp;ldquo;fetch code → build → test → package → deploy&amp;rdquo;.&lt;/p>
&lt;h2 id="2-installation">2. Installation&lt;/h2>
&lt;h3 id="prerequisite-java">Prerequisite: Java&lt;/h3>
&lt;p>Jenkins requires &lt;strong>Java 17 or 21&lt;/strong>. Newer versions (e.g., Java 26) fail to start:&lt;/p>
&lt;pre tabindex="0">&lt;code>Running with Java 26 ... not yet fully supported. Supported Java versions are: [17, 21]
&lt;/code>&lt;/pre>&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>wget https://get.jenkins.io/war-stable/latest/jenkins.war -O /tmp/jenkins.war
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>/opt/jdk-21/bin/java -jar /tmp/jenkins.war --httpPort&lt;span style="color:#f92672">=&lt;/span>&lt;span style="color:#ae81ff">9090&lt;/span>
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="recommended-docker">Recommended: Docker&lt;/h3>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-bash" data-lang="bash">&lt;span style="display:flex;">&lt;span>docker run -d &lt;span style="color:#ae81ff">\
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">&lt;/span> --name jenkins &lt;span style="color:#ae81ff">\
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">&lt;/span> -p 9090:8080 &lt;span style="color:#ae81ff">\
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">&lt;/span> -v jenkins_home:/var/jenkins_home &lt;span style="color:#ae81ff">\
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#ae81ff">&lt;/span> jenkins/jenkins:lts-jdk21
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h2 id="3-initial-setup">3. Initial Setup&lt;/h2>
&lt;p>Visit &lt;code>http://localhost:9090&lt;/code>:&lt;/p></description></item></channel></rss>