Wprowadzenie: instalowanie narzędzia Jenkins na maszynie wirtualnej z systemem Linux platformy Azure

W tym artykule pokazano, jak zainstalować narzędzie Jenkins na maszynie wirtualnej z systemem Ubuntu Linux przy użyciu narzędzi i wtyczek skonfigurowanych do pracy z platformą Azure.

Ten artykuł obejmuje następujące zagadnienia:

  • Tworzenie pliku instalacyjnego, który pobiera i instaluje narzędzie Jenkins
  • Tworzenie grupy zasobów
  • Tworzenie maszyny wirtualnej przy użyciu pliku instalacyjnego
  • Otwórz port 8080, aby uzyskać dostęp do serwera Jenkins na maszynie wirtualnej
  • Połączenie do maszyny wirtualnej za pośrednictwem protokołu SSH
  • Konfigurowanie przykładowego zadania narzędzia Jenkins na podstawie przykładowej aplikacji Java w usłudze GitHub
  • Kompilowanie przykładowego zadania narzędzia Jenkins

1. Konfigurowanie środowiska

  • Subskrypcja platformy Azure: jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

2. Otwórz usługę Cloud Shell

  1. Jeśli masz już otwartą sesję usługi Cloud Shell, możesz przejść do następnej sekcji.

  2. Przejdź do witryny Azure Portal

  3. W razie potrzeby zaloguj się do subskrypcji platformy Azure i zmień katalog platformy Azure.

  4. Otwórz usługę Cloud Shell.

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

  5. Jeśli wcześniej nie użyto usługi Cloud Shell, skonfiguruj ustawienia środowiska i magazynu.

  6. Wybierz środowisko wiersza polecenia.

    Select the CLI you want to use in Cloud Shell.

3. Tworzenie maszyny wirtualnej

  1. Utwórz katalog testowy o nazwie jenkins-get-started.

  2. Przejdź do katalogu testowego.

  3. Utwórz plik o nazwie cloud-init-jenkins.txt.

  4. Wklej następujący kod do nowego pliku:

    #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. Uruchom polecenie az group create , aby utworzyć grupę zasobów.

    az group create --name jenkins-get-started-rg --location eastus
    
  6. Uruchom polecenie az vm create , aby utworzyć maszynę wirtualną.

    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. Uruchom polecenie az vm list , aby zweryfikować tworzenie (i stan) nowej maszyny wirtualnej.

    az vm list -d -o table --query "[?name=='jenkins-get-started-vm']"
    
  8. Gdy usługa Jenkins działa na porcie 8080, uruchom polecenie az vm open , aby otworzyć port 8080 na nowej maszynie wirtualnej.

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

4. Konfigurowanie usługi Jenkins

  1. Uruchom polecenie az vm show , aby uzyskać publiczny adres IP dla przykładowej maszyny wirtualnej.

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

    Kluczowe punkty:

    • Parametr --query ogranicza dane wyjściowe do publicznych adresów IP maszyny wirtualnej.
  2. Przy użyciu adresu IP pobranego w poprzednim kroku protokół SSH do maszyny wirtualnej. Musisz potwierdzić żądanie połączenia.

    ssh azureuser@<ip_address>
    

    Kluczowe punkty:

    • Po pomyślnym nawiązaniu połączenia monit usługi Cloud Shell zawiera nazwę użytkownika i nazwę maszyny wirtualnej: azureuser@jenkins-get-started-vm.
  3. Sprawdź, czy usługa Jenkins jest uruchomiona, uzyskując stan usługi Jenkins.

    service jenkins status
    

    Kluczowe punkty:

    • Jeśli wystąpi błąd dotyczący usługi, która nie istnieje, może być konieczne odczekenie kilku minut na zainstalowanie i zainicjowanie wszystkiego.
  4. Pobierz automatycznie wygenerowane hasło serwera Jenkins.

    sudo cat /var/lib/jenkins/secrets/initialAdminPassword
    
  5. Przy użyciu adresu IP otwórz następujący adres URL w przeglądarce: http://<ip_address>:8080

  6. Wprowadź pobrane wcześniej hasło, a następnie wybierz pozycję Kontynuuj.

    Initial page to unlock Jenkins

  7. Wybierz pozycję Wybierz wtyczkę do zainstalowania.

    Select the option to install selected plug-ins

  8. W polu filtru w górnej części strony wprowadź .github Wybierz wtyczkę GitHub i wybierz pozycję Zainstaluj.

    Install the GitHub plug-ins

  9. Wprowadź informacje dla pierwszego użytkownika administratora, a następnie wybierz pozycję Zapisz i kontynuuj.

    Enter information for first admin user

  10. Na stronie Konfiguracja wystąpienia wybierz pozycję Zapisz i zakończ.

    Confirmation page for instance configuration

  11. Wybierz pozycję Rozpocznij korzystanie z narzędzia Jenkins.

    Jenkins is ready!

5. Tworzenie pierwszego zadania

  1. Na stronie głównej narzędzia Jenkins wybierz pozycję Utwórz zadanie.

    Jenkins console home page

  2. Wprowadź nazwę mySampleAppzadania , wybierz pozycję Projekt Freestyle, a następnie wybierz przycisk OK.

    New job creation

  3. Wybierz kartę Zarządzanie kodem źródłowym. Włącz usługę Git i wprowadź następujący adres URL dla wartości Adres URL repozytorium: https://github.com/spring-guides/gs-spring-boot.git. Następnie zmień specyfikator gałęzi na */main.

    Define the Git repo

  4. Wybierz kartę Kompilacja, a następnie wybierz pozycję Dodaj krok kompilacji

    Add a new build step

  5. Z menu rozwijanego wybierz pozycję Wywołaj skrypt narzędzia Gradle.

    Select the Gradle script option

  6. Wybierz pozycję Użyj otoki Gradle, a następnie wprowadź wartość complete w polu Lokalizacja otoki i wartość build w polu Zadania.

    Gradle script options

  7. Wybierz pozycję Zaawansowane i wprowadź complete ciąg w polu Główny skrypt kompilacji.

    Advanced Gradle script options

  8. Przewiń do dołu strony i wybierz pozycję Zapisz.

6. Skompiluj przykładową aplikację Java

  1. Gdy zostanie wyświetlona strona główna projektu, wybierz pozycję Kompiluj teraz , aby skompilować kod i spakować przykładową aplikację.

    Project home page

  2. Grafika poniżej nagłówka Historia kompilacji wskazuje, że zadanie jest kompilowane.

    Job-build in progress

  3. Po zakończeniu kompilacji wybierz link Obszar roboczy .

    Select the workspace link.

  4. Przejdź do strony , complete/build/libs aby zobaczyć, że .jar plik został pomyślnie skompilowany.

    The target library verifies the build succeeded.

  5. Serwer Jenkins jest teraz gotowy do tworzenia własnych projektów na platformie Azure!

Rozwiązywanie problemów

Jeśli wystąpią jakiekolwiek problemy z konfigurowaniem serwera Jenkins, zapoznaj się ze stroną instalacji serwera Jenkins, aby uzyskać najnowsze instrukcje i znane problemy.

Następne kroki