Comment installer Jenkins sur Windows, Ubuntu et CentOS ?



Un guide détaillé pour l’installation de Jenkins, étape par étape.

Cet article vous guidera à travers le processus d’installation de Jenkins sur divers systèmes d’exploitation.

Bien que les étapes d’installation de Jenkins puissent varier légèrement entre les systèmes d’exploitation mentionnés, la configuration initiale reste globalement similaire.

Qu’est-ce que Jenkins?

Jenkins est un outil d’automatisation open source permettant aux développeurs d’orchestrer l’exécution de projets et d’applications. Il facilite la construction, le déploiement et l’automatisation de logiciels et d’applications. Cette solution d’automatisation performante assure une intégration et une livraison continues des projets, indépendamment de la plateforme utilisée.

Jenkins, étant une application Java, fonctionne de manière autonome sur toute machine disposant d’un environnement d’exécution Java (JRE).

Si vous souhaitez approfondir vos connaissances sur Jenkins, ce cours en ligne vous transformera en expert.

Prérequis

L’installation de JDK8 ou d’une version supérieure est indispensable pour tous les systèmes d’exploitation. Vous pouvez le télécharger et l’installer depuis ce lien.

Installation de Jenkins sous Windows

Une fois que JDK est correctement installé et configuré, vous pouvez procéder au téléchargement et à l’installation de Jenkins. Téléchargez le package MSI le plus récent pour Windows en cliquant ici.

  • Lancez l’installation en double-cliquant sur le fichier jenkins.msi.
  • Cliquez sur « Suivant » puis sur « Installer ».
  • Si vous souhaitez modifier le répertoire d’installation, cliquez sur « Modifier ». Dans cet exemple, nous utiliserons l’option par défaut, donc cliquez sur « Suivant ».

  • Une fois l’installation terminée, cliquez sur « Terminer ».

L’installation de Jenkins sous Windows est simple, comme celle de tout autre logiciel standard.

Installation de Jenkins sur Ubuntu

Comme précédemment mentionné, assurez-vous que JDK8+ est installé et opérationnel sur votre machine Ubuntu. Si ce n’est pas le cas, exécutez la commande ci-dessous pour l’installer:

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]:~$
  

Pour confirmer que Java est bien installé, utilisez cette commande :

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]:~$
      

Une fois JDK installé, vous pouvez procéder à l’installation de Jenkins.

Étapes d’installation:

Étape 1: Ouvrez le terminal (Ctrl + Alt + T).

Étape 2: Ajoutez la clé du référentiel au système pour installer Jenkins:

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]:~$
    

Étape 3: Après avoir ajouté la clé, ajoutez l’adresse du dépôt Debian à la machine:

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

Étape 4: Mettez à jour la liste des paquets Ubuntu:

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]:~$
      

Étape 5: Installez Jenkins en exécutant la commande suivante:

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 est maintenant installé. Démarrez le serveur Jenkins.

Étape 6: Démarrez Jenkins avec la commande systemctl:

sudo systemctl start jenkins

Pour vérifier le statut de Jenkins, exécutez:

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]:~$
        

Étape 7: Configuration du port (facultatif)

Par défaut, Jenkins s’exécute sur le port 8080. Si ce port n’est pas accessible, ouvrez-le:

sudo ufw allow 8080

Pour vérifier l’état du port:

sudo ufw status

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

Si le pare-feu est inactif, exécutez:

sudo ufw allow OpenSSH

puis:

sudo ufw enable

Installation de Jenkins sur CentOS

Vérifiez que JDK8+ est installé sur la machine. Si ce n’est pas le cas, installez le package OpenJDK 8 avec la commande:

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] ~]$
  

Vérifiez que Java est installé avec:

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] ~]$
  

Après l’installation de Java, vous pouvez installer Jenkins.

Étapes d’installation:

Étape 1: Ouvrez le terminal.

Étape 2: Téléchargez et ajoutez la clé GPG de Jenkins:

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] ~]$
    

Étape 3: Importez la clé GPG de Jenkins:

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

Étape 4: Mettez à jour les packages CentOS:

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] ~]$
        

Étape 5: Installez 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] ~]$
        

Étape 6: Démarrez Jenkins avec systemctl:

sudo systemctl start jenkins

Pour vérifier le statut de Jenkins:

sudo systemctl status jenkins
        [[email protected] ~]$ sudo systemctl status jenkins
        [sudo] password for toptips.fr: 
        ● 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] ~]$
        

Étape 7: Configuration du port (facultatif)

Par défaut, Jenkins s’exécute sur le port 8080. Si ce port n’est pas accessible, ouvrez-le:

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] ~]$
    

Puis rechargez le pare-feu:

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

Configuration de Jenkins

Une fois Jenkins installé, il sera accessible sur le port 8080. Ouvrez l’adresse http://localhost:8080 dans votre navigateur pour lancer la configuration.

Étape 1: Accédez à http://localhost:8080

Étape 2: Pour débloquer Jenkins, copiez le mot de passe administrateur depuis:

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

Collez-le dans le champ « Mot de passe administrateur » et cliquez sur « Continuer ».

Étape 3: Installez les plugins suggérés ou choisissez ceux qui répondent à vos besoins. Ici, nous installerons les plugins suggérés.

Étape 4: Attendez que les plugins soient installés, puis cliquez sur « Continuer ».

Étape 5: Créez un compte administrateur pour Jenkins. Entrez les informations demandées et cliquez sur « Enregistrer et continuer ».

Étape 6: Modifiez l’URL de Jenkins si nécessaire. Gardons l’URL par défaut: http://localhost:8080. Cliquez sur « Enregistrer et terminer » pour terminer la configuration, puis cliquez sur « Commencer à utiliser Jenkins ».

La configuration est maintenant terminée. Voici la page d’accueil par défaut de Jenkins.

La configuration de Jenkins est similaire pour tous les systèmes d’exploitation, à l’exception de l’étape 2, où vous devez obtenir et saisir le mot de passe administrateur depuis le fichier indiqué, pour déverrouiller l’interface utilisateur.

Conclusion

Voici les étapes nécessaires à l’installation de Jenkins sur votre système d’