Bien démarrer : Installer Jenkins sur une machine virtuelle Linux Azure

Cet article montre comment installer Jenkins sur une machine virtuelle Ubuntu Linux avec les outils et les plug-ins configurés pour fonctionner avec Azure.

Dans cet article, vous allez apprendre à :

  • Créer un fichier d’installation qui télécharge et installe Jenkins
  • Créer un groupe de ressources
  • Créer une machine virtuelle avec le fichier d’installation
  • Ouvrir le port 8080 pour accéder à Jenkins sur la machine virtuelle
  • Vous connecter à la machine virtuelle via SSH
  • Configurer un exemple de travail Jenkins basé sur un exemple d’application Java dans GitHub
  • Générer l’exemple de travail Jenkins

1. Configurer votre environnement

  • Abonnement Azure : Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.

2. Ouvrir Cloud Shell

  1. Si vous avez déjà une session Cloud Shell ouverte, vous pouvez passer à la section suivante.

  2. Naviguez vers le portail Azure

  3. Si nécessaire, connectez-vous à votre abonnement Azure et changez l’annuaire Azure.

  4. Ouvrez Cloud Shell.

    Open Cloud Shell from the top menu in the Azure portal.

  5. Si vous n’avez pas déjà utilisé Cloud Shell, configurez les paramètres d’environnement et de stockage.

  6. Sélectionnez l’environnement de ligne de commande.

    Select the CLI you want to use in Cloud Shell.

3. Créer une machine virtuelle

  1. Créez un répertoire de test appelé jenkins-get-started.

  2. Basculez vers le répertoire de test.

  3. Créez un fichier appelé cloud-init-jenkins.txt.

  4. Collez le code suivant dans le nouveau fichier :

    #cloud-config
    package_upgrade: true
    runcmd:
      - sudo apt install openjdk-11-jre -y
      - curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
      -  echo 'deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] https://pkg.jenkins.io/debian-stable binary/' | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
      - sudo apt-get update && sudo apt-get install jenkins -y
      - sudo service jenkins restart
    
    
    
  5. Exécutez az group create pour créer un groupe de ressources.

    az group create --name jenkins-get-started-rg --location eastus
    
  6. Exécutez az vm create pour créer une machine virtuelle.

    az vm create \
    --resource-group jenkins-get-started-rg \
    --name jenkins-get-started-vm \
    --image UbuntuLTS \
    --admin-username "azureuser" \
    --generate-ssh-keys \
    --public-ip-sku Standard \
    --custom-data cloud-init-jenkins.txt
    
  7. Exécutez az vm list pour vérifier la création (et l’état) de la nouvelle machine virtuelle.

    az vm list -d -o table --query "[?name=='jenkins-get-started-vm']"
    
  8. Comme Jenkins s’exécute sur le port 8080, exécutez az vm open pour ouvrir le port 8080 sur la nouvelle machine virtuelle.

    az vm open-port \
    --resource-group jenkins-get-started-rg \
    --name jenkins-get-started-vm  \
    --port 8080 --priority 1010
    

4. Configurer Jenkins

  1. Exécutez az vm show pour récupérer l’adresse IP publique de l’exemple de machine virtuelle.

    az vm show \
    --resource-group jenkins-get-started-rg \
    --name jenkins-get-started-vm -d \
    --query [publicIps] \
    --output tsv
    

    Points essentiels :

    • Le paramètre --query limite la sortie aux adresses IP publiques de la machine virtuelle.
  2. Utilisez l’adresse IP récupérée à l’étape précédente pour établir une connexion SSH à la machine virtuelle. Vous devez confirmer la requête de connexion.

    ssh azureuser@<ip_address>
    

    Points essentiels :

    • Une fois la connexion établie, l’invite Cloud Shell comprend le nom de l’utilisateur et le nom de la machine virtuelle : azureuser@jenkins-get-started-vm.
  3. Vérifiez que Jenkins est en cours d’exécution en obtenant l’état du service Jenkins.

    service jenkins status
    

    Points essentiels :

    • Si vous recevez une erreur qui indique que le service n’existe pas, patientez quelques minutes pour que tout soit installé et initialisé.
  4. Récupérez le mot de passe Jenkins généré automatiquement.

    sudo cat /var/lib/jenkins/secrets/initialAdminPassword
    
  5. À l’aide de l’adresse IP, ouvrez l’URL suivante dans un navigateur : http://<ip_address>:8080

  6. Entrez le mot de passe que vous avez récupéré précédemment, puis sélectionnez Continuer.

    Initial page to unlock Jenkins

  7. Sélectionnez Select plug-in to install (Sélectionner le plug-in à installer).

    Select the option to install selected plug-ins

  8. Dans la zone de filtre située en haut de la page, entrez github. Sélectionnez le plug-in GitHub, puis Installer.

    Install the GitHub plug-ins

  9. Entrez les informations correspondant au premier utilisateur administrateur, puis sélectionnez Enregistrer et continuer.

    Enter information for first admin user

  10. Sur la page Configuration de l’instance, sélectionnez Enregistrer et terminer.

    Confirmation page for instance configuration

  11. Sélectionnez Commencer à utiliser Jenkins.

    Jenkins is ready!

5. Créer votre premier travail

  1. Sur la page d'accueil de Jenkins, sélectionnez Créer un travail.

    Jenkins console home page

  2. Entrez un nom de travail mySampleApp, sélectionnez Projet libre, puis OK.

    New job creation

  3. Sélectionnez l’onglet Gestion du code source. Activez Git et entrez l’URL suivante pour la valeur URL du dépôt : https://github.com/spring-guides/gs-spring-boot.git. Ensuite, remplacez le spécificateur de branche par */main.

    Define the Git repo

  4. Sélectionnez l’onglet Générer, puis Ajouter une étape de génération.

    Add a new build step

  5. Dans le menu déroulant, sélectionnez Appeler le script Gradle.

    Select the Gradle script option

  6. Sélectionnez Utiliser Gradle Wrapper, puis entrez complete dans l’emplacement de Wrapper et build pour Tâches.

    Gradle script options

  7. Sélectionnez Avancé, puis entrez complete dans le champ Script de génération racine.

    Advanced Gradle script options

  8. Faites défiler vers le bas de la page, sélectionnez Enregistrer.

6. Générer l’exemple d’application Java

  1. Lorsque la page d'accueil de votre projet s’affiche, sélectionnez Générer maintenant pour compiler le code et empaqueter l’exemple d’application.

    Project home page

  2. Sous l’en-tête Historique de génération, un graphique indique le travail en cours de génération.

    Job-build in progress

  3. Une fois la génération terminée, sélectionnez le lienEspace de travail.

    Select the workspace link.

  4. Accédez à complete/build/libs pour vérifier que le fichier .jar a bien été généré.

    The target library verifies the build succeeded.

  5. Votre serveur Jenkins est maintenant prêt à générer vos propres projets dans Azure.

Résolution des problèmes

Si vous rencontrez des problèmes pendant la configuration de Jenkins, consultez la page d’installation de Jenkins pour connaître les dernières instructions et les problèmes connus.

Étapes suivantes