Hur installerar jag Jenkins på Windows, Ubuntu och CentOS?

By rik

Steg-för-steg-guide för att installera Jenkins

Denna artikel ger en detaljerad beskrivning av hur du installerar Jenkins på olika operativsystem.

I den här handledningen kommer vi att utforska installationen av Jenkins på följande plattformar:

  • Windows
  • Ubuntu
  • CentOS

Installationsprocessen för Jenkins varierar något beroende på operativsystem, men konfigurationsstegen är i stort sett desamma.

Vad är Jenkins?

Jenkins, tillgängligt via Jenkins webbplats, är ett automatiseringsverktyg med öppen källkod som ger utvecklare möjlighet att effektivt hantera projekt och applikationer. Det används för att bygga och distribuera programvara på ett automatiserat sätt. Jenkins är en kraftfull applikation för automatisering som möjliggör kontinuerlig integration och kontinuerlig leverans (CI/CD) av projekt, oberoende av vilken plattform du använder.

Jenkins är en Java-baserad applikation och kan köras på alla maskiner med Java Runtime Environment (JRE) installerat.

Om du vill fördjupa dig i Jenkins, kolla in den här onlinekurs för att snabbt gå från nybörjare till expert.

Förutsättningar

Innan du installerar Jenkins, se till att JDK8 eller en senare version är installerad på ditt system. Du kan ladda ner och installera det från denna länk.

Jenkins installation på Windows

När JDK är installerat är du redo att ladda ner och installera Jenkins. Hämta den senaste Jenkins MSI-paketet för Windows från den här nedladdningssidan.

Följ dessa steg för att slutföra installationen:

  • Dubbelklicka på jenkins.msi för att starta installationsprocessen.
  • Klicka på ”Nästa” och sedan ”Installera”.
  • Om du vill ändra installationskatalog, klicka på ”Ändra”, annars behåll standard och klicka på ”Nästa”.

  • Slutför installationen genom att klicka på ”Slutför”.

Installationen av Jenkins på Windows är enkel och liknar installationen av andra program.

Jenkins installation på Ubuntu

För att installera Jenkins på Ubuntu, se till att JDK8 eller senare är installerat. Om det inte är det, använd kommandot nedan:

sudo apt install default-jdk-headless

    [email protected]:~$ sudo apt install default-jdk-headless
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following NEW packages will be installed:
      default-jdk-headless
    0 upgraded, 1 newly installed, 0 to remove and 102 not upgraded.
    Need to get 1132 B of archives.
    After this operation, 6144 B of additional disk space will be used.
    Get:1 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 default-jdk-headless amd64 2:1.11-68ubuntu1~18.04.1 [1132 B]
    Fetched 1132 B in 2s (676 B/s)
    Selecting previously unselected package default-jdk-headless.
    (Reading database ... 30061 files and directories currently installed.)
    Preparing to unpack .../default-jdk-headless_2%3a1.11-68ubuntu1~18.04.1_amd64.deb ...
    Unpacking default-jdk-headless (2:1.11-68ubuntu1~18.04.1) ...
    Setting up default-jdk-headless (2:1.11-68ubuntu1~18.04.1) ...
    [email protected]:~$
  

Verifiera att Java är installerat med:

java -version

    [email protected]:~$ java -version
    openjdk version "11.0.7" 2020-04-14
    OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-2ubuntu218.04)
    OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-2ubuntu218.04, mixed mode, sharing)
    [email protected]:~$
  

Med Java på plats, följ dessa steg för att installera Jenkins:

Installationssteg:

Steg 1: Öppna kommandoterminalen (Ctrl + Alt + T).

Steg 2: Lägg till Jenkins förvarsnyckel till systemet:

wget -q -O – http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add –

    [email protected]:~$ wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
    OK
    [email protected]:~$
  

Steg 3: Lägg till Debian-paketets reposadress till din maskin:

sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

Steg 4: Uppdatera Ubuntu-paket:

sudo apt update

      [email protected]:~$ sudo apt update
      Hit:1 http://archive.ubuntu.com/ubuntu bionic InRelease
      Get:2 http://archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
      Ign:3 http://pkg.jenkins-ci.org/debian-stable binary/ InRelease
      Get:4 http://pkg.jenkins-ci.org/debian-stable binary/ Release [2044 B]
      Get:5 http://pkg.jenkins-ci.org/debian-stable binary/ Release.gpg [195 B]
      Get:6 http://archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
      Get:7 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages [8570 kB]
      Get:8 http://pkg.jenkins-ci.org/debian-stable binary/ Packages [17.6 kB]
      Get:9 http://security.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
      Get:10 http://security.ubuntu.com/ubuntu bionic-security/main amd64 Packages [748 kB]
      Get:11 http://security.ubuntu.com/ubuntu bionic-security/main Translation-en [237 kB]
      Get:12 http://security.ubuntu.com/ubuntu bionic-security/restricted amd64 Packages [50.8 kB]
      Get:13 http://security.ubuntu.com/ubuntu bionic-security/restricted Translation-en [12.3 kB]
      Get:14 http://security.ubuntu.com/ubuntu bionic-security/universe amd64 Packages [673 kB]
      Get:15 http://security.ubuntu.com/ubuntu bionic-security/universe Translation-en [223 kB]
      Get:16 http://security.ubuntu.com/ubuntu bionic-security/multiverse amd64 Packages [7808 B]
      Get:17 http://security.ubuntu.com/ubuntu bionic-security/multiverse Translation-en [2856 B]
      Get:18 http://archive.ubuntu.com/ubuntu bionic/universe Translation-en [4941 kB]
      Get:19 http://archive.ubuntu.com/ubuntu bionic/multiverse amd64 Packages [151 kB]
      Get:20 http://archive.ubuntu.com/ubuntu bionic/multiverse Translation-en [108 kB]
      Get:21 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages [969 kB]
      Get:22 http://archive.ubuntu.com/ubuntu bionic-updates/main Translation-en [329 kB]
      Get:23 http://archive.ubuntu.com/ubuntu bionic-updates/restricted amd64 Packages [60.5 kB]
      Get:24 http://archive.ubuntu.com/ubuntu bionic-updates/restricted Translation-en [14.7 kB]
      Get:25 http://archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages [1085 kB]
      Get:26 http://archive.ubuntu.com/ubuntu bionic-updates/universe Translation-en [337 kB]
      Get:27 http://archive.ubuntu.com/ubuntu bionic-updates/multiverse amd64 Packages [15.9 kB]
      Get:28 http://archive.ubuntu.com/ubuntu bionic-updates/multiverse Translation-en [6420 B]
      Get:29 http://archive.ubuntu.com/ubuntu bionic-backports/main amd64 Packages [7516 B]
      Get:30 http://archive.ubuntu.com/ubuntu bionic-backports/main Translation-en [4764 B]
      Get:31 http://archive.ubuntu.com/ubuntu bionic-backports/universe amd64 Packages [7484 B]
      Get:32 http://archive.ubuntu.com/ubuntu bionic-backports/universe Translation-en [4436 B]
      Fetched 18.8 MB in 58s (327 kB/s)
      Reading package lists... Done
      Building dependency tree
      Reading state information... Done
      102 packages can be upgraded. Run 'apt list --upgradable' to see them.
      [email protected]:~$
    

Steg 5: Installera Jenkins med följande kommando:

sudo apt install jenkins

    [email protected]:~$ sudo apt install jenkins
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following additional packages will be installed:
      daemon
    The following NEW packages will be installed:
      daemon jenkins
    0 upgraded, 2 newly installed, 0 to remove and 102 not upgraded.
    Need to get 65.7 MB of archives.
    After this operation, 66.8 MB of additional disk space will be used.
    Do you want to continue? [Y/n] Y
    Get:1 http://archive.ubuntu.com/ubuntu bionic/universe amd64 daemon amd64 0.6.4-1build1 [99.5 kB]
    Get:2 http://pkg.jenkins-ci.org/debian-stable binary/ jenkins 2.235.1 [65.6 MB]
    Fetched 65.7 MB in 3min 34s (307 kB/s)
    Selecting previously unselected package daemon.
    (Reading database ... 29242 files and directories currently installed.)
    Preparing to unpack .../daemon_0.6.4-1build1_amd64.deb ...
    Unpacking daemon (0.6.4-1build1) ...
    Selecting previously unselected package jenkins.
    Preparing to unpack .../jenkins_2.235.1_all.deb ...
    Unpacking jenkins (2.235.1) ...
    Setting up daemon (0.6.4-1build1) ...
    Setting up jenkins (2.235.1) ...
    invoke-rc.d: could not determine current runlevel
    Processing triggers for systemd (237-3ubuntu10.39) ...
    Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
    Processing triggers for ureadahead (0.100.0-21) ...
    [email protected]:~$
  

Jenkins är nu installerat. Du kan starta Jenkins-servern med följande kommando.

Steg 6: Starta Jenkins med:

sudo systemctl start jenkins

För att verifiera att Jenkins körs, kolla statusen med:

sudo systemctl status jenkins

    [email protected]:~$ sudo systemctl status jenkins
    ● jenkins.service - LSB: Start Jenkins at boot time
       Loaded: loaded (/etc/init.d/jenkins; generated)
       Active: active (exited) since Sat 2020-04-04 10:10:19 UTC; 2 months 16 days ago
         Docs: man:systemd-sysv-generator(8)
        Tasks: 0 (limit: 4915)
       CGroup: /system.slice/jenkins.service
    
    Apr 04 10:10:18 ip-172-31-17-25 systemd[1]: Starting LSB: Start Jenkins at boot time...
    Apr 04 10:10:18 ip-172-31-17-25 jenkins[1984]: Correct java version found
    Apr 04 10:10:18 ip-172-31-17-25 jenkins[1984]:  * Starting Jenkins Automation Server jenkins
    Apr 04 10:10:18 ip-172-31-17-25 su[2037]: Successful su for root by root
    Apr 04 10:10:18 ip-172-31-17-25 su[2037]: + ??? root:root
    Apr 04 10:10:18 ip-172-31-17-25 su[2037]: pam_unix(su:session): session opened for user root by (uid=0)
    Apr 04 10:10:18 ip-172-31-17-25 jenkins[1984]: mesg: ttyname failed: Inappropriate ioctl for device
    Apr 04 10:10:18 ip-172-31-17-25 su[2037]: pam_unix(su:session): session closed for user root
    Apr 04 10:10:19 ip-172-31-17-25 jenkins[1984]:    ...done.
    Apr 04 10:10:19 ip-172-31-17-25 systemd[1]: Started LSB: Start Jenkins at boot time.
    [email protected]:~$
  

Steg 7 (Valfritt): Konfigurera porten

Jenkins körs som standard på port 8080. Öppna denna port i brandväggen med:

sudo ufw allow 8080

Kontrollera portstatusen med:

sudo ufw status

     [email protected]:~$ sudo ufw status 
     Status: active 
     To           Action           From
     --           ------           ---- 
     8080         ALLOW            Anywhere 
     8080 (v6)    ALLOW            Anywhere (v6) 
     [email protected]:~$
   

Om brandväggen inte är aktiv, tillåt OpenSSH och aktivera den med:

sudo ufw allow OpenSSH

och sedan

sudo ufw enable

Jenkins installation på CentOS

Innan installation av Jenkins på CentOS, se till att JDK8+ är installerat. Om inte, installera OpenJDK 8 med:

sudo yum install java-1.8.0-openjdk-devel
    [[email protected] ~]$ sudo yum install java-1.8.0-openjdk-devel
    CentOS-8 - AppStream                            1.0 kB/s | 4.3 kB     00:04    
    CentOS-8 - AppStream                            397 kB/s | 5.8 MB     00:14    
    CentOS-8 - Base                                 3.5 kB/s | 3.9 kB     00:01    
    CentOS-8 - Extras                               547  B/s | 1.5 kB     00:02    
    Jenkins-stable                                  6.5 kB/s | 2.9 kB     00:00    
    Dependencies resolved.
    ================================================================================
     Package                   Arch    Version                     Repository  Size
    ================================================================================
    Installing:
     java-1.8.0-openjdk-devel  x86_64  1:1.8.0.252.b09-3.el8_2     AppStream  9.8 M
    
    Transaction Summary
    ================================================================================
    Install  1 Package
    
    Total download size: 9.8 M
    Installed size: 41 M
    Is this ok [y/N]: y
    Downloading Packages:
    java-1.8.0-openjdk-devel-1.8.0.252.b09-3.el8_2. 531 kB/s | 9.8 MB     00:18    
    --------------------------------------------------------------------------------
    Total                                           507 kB/s | 9.8 MB     00:19     
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    Transaction test succeeded.
    Running transaction
      Preparing        :                                                        1/1 
      Installing       : java-1.8.0-openjdk-devel-1:1.8.0.252.b09-3.el8_2.x86   1/1 
      Running scriptlet: java-1.8.0-openjdk-devel-1:1.8.0.252.b09-3.el8_2.x86   1/1 
      Verifying        : java-1.8.0-openjdk-devel-1:1.8.0.252.b09-3.el8_2.x86   1/1 
    Installed products updated.
    
    Installed:
      java-1.8.0-openjdk-devel-1:1.8.0.252.b09-3.el8_2.x86_64                       
    
    Complete!
    [[email protected] ~]$
  

Verifiera Java-installationen med:

java -version
    [[email protected] ~]$ java -version
    openjdk version "1.8.0_252"
    OpenJDK Runtime Environment (build 1.8.0_252-b09)
    OpenJDK 64-Bit Server VM (build 25.252-b09, mixed mode)
    [[email protected] ~]$
  

Med Java installerat, följ dessa steg för att installera Jenkins:

Installationssteg

Steg 1: Öppna kommandoterminalen.

Steg 2: Ladda ner och lägg till Jenkins GPG-nyckel:

sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
    [[email protected] ~]$ sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
    --2020-06-21 04:29:52--  http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
    Resolving pkg.jenkins-ci.org (pkg.jenkins-ci.org)... 52.202.51.185, 64:ff9b::34ca:33b9
    Connecting to pkg.jenkins-ci.org (pkg.jenkins-ci.org)|52.202.51.185|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 85
    Saving to: ‘/etc/yum.repos.d/jenkins.repo’
    
    /etc/yum.repos.d/je 100%[==================>]      85  --.-KB/s    in 0s      
    
    2020-06-21 04:29:54 (2.61 MB/s) - ‘/etc/yum.repos.d/jenkins.repo’ saved [85/85]
    
    [[email protected] ~]$
  

Steg 3: Importera Jenkins GPG-nyckel:

sudo rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key

Steg 4: Uppdatera CentOS-paket:

sudo yum update
    [[email protected] ~]$ sudo yum update
    Last metadata expiration check: 0:17:09 ago on Sun 21 Jun 2020 04:21:20 AM PDT.
    Dependencies resolved.
    Nothing to do.
    Complete!
    [[email protected] ~]$
  

Steg 5: Installera Jenkins:

sudo yum install jenkins
    [[email protected] ~]$ sudo yum install jenkins
    Last metadata expiration check: 0:19:26 ago on Sun 21 Jun 2020 04:21:20 AM PDT.
    Dependencies resolved.
    ===============================================================================
     Package          Architecture    Version               Repository        Size
    ===============================================================================
    Installing:
     jenkins          noarch          2.235.1-1.1           jenkins           63 M
    
    Transaction Summary
    ===============================================================================
    Install  1 Package
    
    Total download size: 63 M
    Installed size: 63 M
    Is this ok [y/N]: y
    Downloading Packages:
    jenkins-2.235.1-1.1.noarch.rpm                 172 kB/s |  63 MB     06:16    
    -------------------------------------------------------------------------------
    Total                                          172 kB/s |  63 MB     06:16     
    Running transaction check
    Transaction check succeeded.
    Running transaction test
    Transaction test succeeded.
    Running transaction
      Preparing        :                                                       1/1 
      Running scriptlet: jenkins-2.235.1-1.1.noarch                            1/1 
      Installing       : jenkins-2.235.1-1.1.noarch                            1/1 
      Running scriptlet: jenkins-2.235.1-1.1.noarch                            1/1 
      Verifying        : jenkins-2.235.1-1.1.noarch                            1/1 
    Installed products updated.
    
    Installed:
      jenkins-2.235.1-1.1.noarch                                                   
    
    Complete!
    [[email protected] ~]$
  

Steg 6: Starta Jenkins:

sudo systemctl start jenkins

Kontrollera statusen med:

sudo systemctl status jenkins
    [[email protected] ~]$ sudo systemctl status jenkins
    [sudo] password for adminvista.com: 
    ● jenkins.service - LSB: Jenkins Automation Server
       Loaded: loaded (/etc/rc.d/init.d/jenkins; generated)
       Active: active (running)
         Docs: man:systemd-sysv-generator(8)
    
    Jun 20 11:15:22 localhost.localdomain systemd[1]: Starting LSB: Jenkins Automa>
    Jun 20 11:15:23 localhost.localdomain runuser[1456]: pam_unix(runuser:session)>
    Jun 20 11:15:33 localhost.localdomain jenkins[1433]: Starting Jenkins [  OK  ]
    Jun 20 11:15:33 localhost.localdomain systemd[1]: Started LSB: Jenkins Automat>
    Jun 21 04:23:04 localhost.localdomain systemd[1]: Stopping LSB: Jenkins Automa>
    [[email protected] ~]$
  

Steg 7 (Valfritt): Konfigurera porten

Jenkins körs som standard på port 8080. Öppna denna port i brandväggen med:

sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
    [[email protected] ~]$ sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
    success
    [[email protected] ~]$
  

Ladda sedan om brandväggen:

sudo firewall-cmd --reload
    [[email protected] ~]$ sudo firewall-cmd --reload
    success
    [[email protected] ~]$
  

Konfigurera Jenkins

Efter installationen kan du konfigurera Jenkins genom att navigera till http://localhost:8080 i din webbläsare.

Steg 1: Besök http://localhost:8080

Steg 2: Hämta administratörslösenordet:

  • På Windows: C:\Program Files (x86)\Jenkins\secrets\initialAdminPassword
  • På Linux: /var/lib/jenkins/secrets/initialAdminPassword

Kopiera lösenordet och klistra in i fältet ”Administratörslösenord”. Klicka sedan på ”Fortsätt”.

Steg 3: Installera föreslagna plugins eller välj manuellt. Vi rekommenderar att installera de föreslagna plugins.

Steg 4: Vänta tills plugins är installerade. Klicka sedan på ”Fortsätt”.

Steg 5: Skapa ett administratörskonto. Fyll i nödvändig information och klicka på ”Spara och fortsätt”.

Steg 6: Behåll Jenkins URL som standard eller ändra den vid behov. Klicka på ”Spara och slutför” och sedan ”Börja använda Jenkins”.

Konfigurationen är klar. Nu ser du välkomstsidan för Jenkins.

Jenkins konfigurationssteg är i stort sett desamma för alla operativsystem, förutom steg 2 där du behöver hämta administratörslösenordet. Det hittas i filen som anges i ”Unlock Jenkins” gränssnittet.

Slutsats

Ovanstående steg visar hur du installerar Jenkins på olika operativsystem. Nu kan du lära dig hur man skapar första Jenkins Pipeline.

Jenkins är enkelt att installera och om du vill konfigurera det för ett team på distans kan du använda en molnvirtualiseringsmiljö eller använda en Jenkins-värdplattform.