Creare un server Jenkins in una VM Linux di Azure dal portale di AzureCreate a Jenkins server on an Azure Linux VM from the Azure portal

Questa guida introduttiva illustra come installare Jenkins in una VM Ubuntu Linux con gli strumenti e i plug-in configurati per usare Azure.This quickstart shows how to install Jenkins on an Ubuntu Linux VM with the tools and plug-ins configured to work with Azure. Al termine, si avrà un server Jenkins in esecuzione in Azure che compila un'app Java di esempio da GitHub.When you're finished, you have a Jenkins server running in Azure building a sample Java app from GitHub.

prerequisitiPrerequisites

  • Una sottoscrizione di Azure.An Azure subscription
  • Accesso a SSH nella riga di comando del computer (ad esempio, la shell Bash o PuTTY)Access to SSH on your computer's command line (such as the Bash shell or PuTTY)

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.If you don't have an Azure subscription, create a free account before you begin.

Creare la VM Jenkins dal modello di soluzioneCreate the Jenkins VM from the solution template

Jenkins supporta un modello in cui il server Jenkins delega il lavoro a uno o più agenti per consentire a una singola installazione di Jenkins di ospitare un numero elevato di progetti o di fornire ambienti diversi necessari per le compilazioni o i test.Jenkins supports a model where the Jenkins server delegates work to one or more agents to allow a single Jenkins installation to host a large number of projects or to provide different environments needed for builds or tests. I passaggi in questa sezione consentono di installare e configurare un server Jenkins in Azure.The steps in this section guide you through installing and configuring a Jenkins server on Azure.

  1. Nel browser aprire l'immagine di Azure Marketplace per Jenkins.In your browser, open the Azure Marketplace image for Jenkins.

  2. Selezionare SCARICA ADESSO.Select GET IT NOW.

    Selezionare SCARICA ADESSO per avviare il processo di installazione per l'immagine del Marketplace per Jenkins.

  3. Dopo aver esaminato le informazioni sui prezzi e sulle condizioni, selezionare Continua.After reviewing the pricing details and terms information, select Continue.

    Informazioni su prezzi e condizioni dell'immagine del Marketplace per Jenkins.

  4. Selezionare Crea per configurare il server Jenkins nel portale di Azure.Select Create to configure the Jenkins server in the Azure portal.

    Installare l'immagine del Marketplace per Jenkins.

  5. Nella scheda Informazioni di base specificare i valori seguenti:In the Basics tab, specify the following values:

    • Name (Nome) - Immettere Jenkins.Name - Enter Jenkins.
    • Nome utente - Immettere il nome utente da usare per l'accesso alla macchina virtuale su cui è in esecuzione Jenkins.User name - Enter the user name to use when signing into the virtual machine on which Jenkins is running. Il nome utente deve soddisfare specifici requisiti.The user name must meet specific requirements.
    • Tipo di autenticazione - Selezionare Chiave pubblica SSH.Authentication type - Select SSH public key.
    • Chiave pubblica SSH - Copiare e incollare una chiave pubblica RSA nel formato a riga singola (che inizia con ssh-rsa) o nel formato PEM su più righe.SSH public key - Copy and paste an RSA public key in single-line format (starting with ssh-rsa) or multi-line PEM format. È possibile generare le chiavi SSH tramite ssh-keygen in Linux e macOS o con PuTTYGen in Windows.You can generate SSH keys using ssh-keygen on Linux and macOS, or PuTTYGen on Windows. Per altre informazioni sulle chiavi SSH e Azure, vedere l'articolo Come usare le chiavi SSH con Windows in Azure.For more information about SSH keys and Azure, see the article, How to Use SSH keys with Windows on Azure.
    • Sottoscrizione: selezionare la sottoscrizione di Azure in cui si vuole installare Jenkins.Subscription - Select the Azure subscription into which you want to install Jenkins.
    • Gruppo di risorse: selezionare Crea nuovo e immettere un nome per il gruppo di risorse che funga da contenitore logico per la raccolta di risorse che costituiscono l'installazione di Jenkins.Resource group - Select Create new, and enter a name for the resource group that serves as a logical container for the collection of resources that make up your Jenkins installation.
    • Località: selezionare Stati Uniti orientali.Location - Select East US.

      Immettere le informazioni di autenticazione e sul gruppo di risorse per Jenkins nella scheda Informazioni di base.

  6. Selezionare OK per passare alla scheda Impostazioni aggiuntive.Select OK to proceed to the Additional Settings tab.

  7. Nella scheda Impostazioni aggiuntive specificare i valori seguenti:In the Additional Settings tab, specify the following values:

    • Dimensioni: selezionare l'opzione appropriata per le dimensioni per la macchina virtuale Jenkins.Size - Select the appropriate sizing option for your Jenkins virtual machine.
    • Tipo di disco della macchina virtuale: specificare HDD (unità disco rigido) o SSD (unità SSD) per indicare il tipo di disco di archiviazione consentito per la macchina virtuale Jenkins.VM disk type - Specify either HDD (hard-disk drive) or SSD (solid-state drive) to indicate which storage disk type is allowed for the Jenkins virtual machine.
    • Rete virtuale - (Facoltativo) Selezionare Rete virtuale per modificare le impostazioni predefinite.Virtual network - (Optional) Select Virtual network to modify the default settings.
    • Subnet - Selezionare Subnet, verificare le informazioni e selezionare OK.Subnets - Select Subnets, verify the information, and select OK.
    • Indirizzo IP pubblico: per impostazione predefinita, per il nome dell'indirizzo IP viene usato il nome di Jenkins specificato nella pagina precedente, preceduto dal suffisso -IP.Public IP address - The IP address name defaults to the Jenkins name you specified in the previous page with a suffix of -IP. È possibile selezionare l'opzione per modificare il valore predefinito.You can select the option to change that default.
    • Etichetta del nome di dominio: specificare il valore per l'URL completo della macchina virtuale Jenkins.Domain name label - Specify the value for the fully qualified URL to the Jenkins virtual machine.
    • Tipo di versione Jenkins - Selezionare il tipo di versione desiderato tra le opzioni LTS, Weekly build o Azure Verified.Jenkins release type - Select the desired release type from the options: LTS, Weekly build, or Azure Verified. Le opzioni LTS e Weekly build sono descritte nell'articolo Jenkins LTS Release Line (Ciclo di rilascio LTS Jenkins).The LTS and Weekly build options are explained in the article, Jenkins LTS Release Line. L'opzione Azure Verified fa riferimento a una versione LTS di Jenkins verificata per l'esecuzione in Azure.The Azure Verified option refers to a Jenkins LTS version that has been verified to run on Azure.

      Immettere le impostazioni della macchina virtuale per Jenkins nella scheda Impostazioni.

  8. Selezionare OK per passare alla scheda Impostazioni di integrazione.Select OK to proceed to the Integration Settings tab.

  9. Nella scheda Impostazioni di integrazione specificare i valori seguenti:In the Integration Settings tab, specify the following values:

    • Entità servizio - L'entità servizio viene aggiunta in Jenkins come credenziale per l'autenticazione con Azure.Service Principal - The service principal is added into Jenkins as a credential for authentication with Azure. Auto significa che l'entità verrà creata dall'identità del servizio gestito.Auto means that the principal will be created by MSI (Managed Service Identity). Manual significa che l'entità deve essere creata dall'utente.Manual means that the principal should be created by you.
      • ID applicazione e Segreto - Se si seleziona l'opzione Manual per l'opzione Entità servizio è necessario specificare Application ID e Secret per l'entità servizio.Application ID and Secret - If you select the Manual option for the Service Principal option, you'll need to specify the Application ID and Secret for your service principal. Quando si crea un'entità servizio, si noti che il ruolo predefinito è Collaboratore, sufficiente per l'utilizzo delle risorse di Azure.When creating a service principal, note that the default role is Contributor, which is sufficient for working with Azure resources.
    • Enable Cloud Agents (Abilita agenti cloud) - Specificare il modello di cloud predefinito per gli agenti in cui ACI fa riferimento a Istanza di contenitore di Azure e VM si riferisce alle macchine virtuali.Enable Cloud Agents - Specify the default cloud template for agents where ACI refers to Azure Container Instance, and VM refers to virtual machines. È anche possibile specificare No se non si desidera abilitare un agente cloud.You can also specify No if you don't wish to enable a cloud agent.
  10. Selezionare OK per passare alla scheda Riepilogo.Select OK to proceed to the Summary tab.

  11. Quando viene visualizzata la scheda Riepilogo, vengono convalidate le informazioni immesse.When the Summary tab displays, the information entered is validated. Quando viene visualizzato il messaggio Convalida superata nella parte superiore della scheda, selezionare OK.Once you see the Validation passed message (at the top of the tab), select OK.

    La scheda Riepilogo visualizza e convalida le opzioni selezionate.

  12. Quando viene visualizzata la scheda Crea, selezionare Crea per creare la macchina virtuale Jenkins.When the Create tab displays, select Create to create the Jenkins virtual machine. Quando il server è pronto, viene visualizzata una notifica nel portale di Azure.When your server is ready, a notification displays in the Azure portal.

    Notifica che indica che Jenkins è pronto.

Connettersi a JenkinsConnect to Jenkins

Passare alla macchina virtuale (ad esempio, http://jenkins2517454.eastus.cloudapp.azure.com/) nel Web browser.Navigate to your virtual machine (for example, http://jenkins2517454.eastus.cloudapp.azure.com/) in your web browser. Dato che la console Jenkins non è accessibile tramite HTTP non protetto, nella pagina verranno visualizzate istruzioni per accedere alla console Jenkins in modo sicuro dal computer usando un tunnel SSH.The Jenkins console is inaccessible through unsecured HTTP so instructions are provided on the page to access the Jenkins console securely from your computer using an SSH tunnel.

Sbloccare Jenkins

Configurare il tunnel usando il comando ssh sulla pagina dalla riga di comando, sostituendo username con il nome dell'utente amministratore della macchina virtuale scelto in precedenza durante la configurazione della macchina virtuale dal modello di soluzione.Set up the tunnel using the ssh command on the page from the command line, replacing username with the name of the virtual machine admin user chosen earlier when setting up the virtual machine from the solution template.

ssh -L 127.0.0.1:8080:localhost:8080 jenkinsadmin@jenkins2517454.eastus.cloudapp.azure.com

Dopo aver avviato il tunnel, passare a http://localhost:8080/ nel computer locale.After you have started the tunnel, navigate to http://localhost:8080/ on your local machine.

Ottenere la password iniziale eseguendo questo comando nella riga di comando mentre si è connessi tramite SSH alla VM Jenkins:Get the initial password by running the following command in the command line while connected through SSH to the Jenkins VM.

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

Sbloccare il dashboard di Jenkins per la prima volta con questa password iniziale.Unlock the Jenkins dashboard for the first time using this initial password.

Sbloccare Jenkins

Selezionare Install suggested plugins (Installa plug-in consigliati) nella pagina successiva e quindi creare un utente amministratore di Jenkins che verrà usato per accedere al dashboard di Jenkins.Select Install suggested plugins on the next page and then create a Jenkins admin user used to access the Jenkins dashboard.

Jenkins è pronto per l'uso.

Il server Jenkins è ora pronto per la compilazione di codice.The Jenkins server is now ready to build code.

Creare il primo processoCreate your first job

Selezionare Create new jobs (Crea nuovi processi) nella console Jenkins, assegnare il nome mySampleApp e selezionare Freestyle project (Progetto Freestyle) e quindi OK.Select Create new jobs from the Jenkins console, then name it mySampleApp and select Freestyle project, then select OK.

Creare un nuovo processo

Selezionare la scheda Source Code Management (Gestione del codice sorgente), abilitare Git e immettere l'URL seguente nel campo Repository URL (URL del repository): https://github.com/spring-guides/gs-spring-boot.gitSelect the Source Code Management tab, enable Git, and enter the following URL in Repository URL field: https://github.com/spring-guides/gs-spring-boot.git

Definire il repository Git

Selezionare la scheda Build (Compilazione) e quindi Add build step (Aggiungi passaggio di compilazione) e Invoke Gradle script (Richiama script Gradle).Select the Build tab, then select Add build step, Invoke Gradle script. Selezionare Use Gradle Wrapper (Usa wrapper di Gradle) e quindi immettere complete in Wrapper location (Percorso wrapper) e build in Tasks (Attività).Select Use Gradle Wrapper, then enter complete in Wrapper location and build for Tasks.

Usare il wrapper di Gradle per la compilazione

Selezionare Advanced (Avanzate)Select Advanced.. e quindi immettere complete nel campo Root Build script (Script di compilazione radice).and then enter complete in the Root Build script field. Selezionare Salva.Select Save.

Configurare le impostazioni avanzate nel passaggio di compilazione del wrapper di Gradle

Compilare il codiceBuild the code

Selezionare Build Now (Compila) per compilare il codice e creare il pacchetto dell'app di esempio.Select Build Now to compile the code and package the sample app. Al termine della compilazione, selezionare il collegamento Workspace (Area di lavoro) per il progetto.When your build completes, select the Workspace link for the project.

Passare all'area di lavoro per ottenere il file JAR della compilazione

Passare a complete/build/libs e verificare che sia presente il file gs-spring-boot-0.1.0.jar per assicurarsi che la compilazione sia stata completata correttamente.Navigate to complete/build/libs and ensure the gs-spring-boot-0.1.0.jar is there to verify that your build was successful. Il server Jenkins è ora pronto per la compilazione dei progetti dell'utente in Azure.Your Jenkins server is now ready to build your own projects in Azure.

Passaggi successiviNext Steps