Configura un server Jenkins utilizzando Docker

Configura Un Server Jenkins Utilizzando Docker



Jenkins è un server di automazione open source ampiamente utilizzato che aiuta ad automatizzare le varie parti del processo di sviluppo del software, tra cui la creazione, il test e la distribuzione delle applicazioni.

Docker è una piattaforma di containerizzazione che ci consente di eseguire applicazioni e servizi in ambienti isolati noti come contenitori.







In questo tutorial impareremo come combinare Jenkins con Docker che ci consente di creare un server Jenkins scalabile e portatile.



NOTA: in questo tutorial utilizzeremo l'immagine jenkins/jenkins ufficiale dal repository Docker Hub. Questa immagine contiene l'attuale versione di supporto a lungo termine (LTS) di Jenkins che è pronta per la produzione.



Creare una rete

Il primo passaggio è creare una nuova rete Docker per isolare l'istanza Jenkins. Ciò facilita una migliore comunicazione.





Per creare una rete a ponte in Docker, possiamo eseguire il seguente comando:

$ la rete docker crea jenkins


Questo crea una rete a ponte chiamata Jenkins.



Esegui il contenitore Jenkins Docker

Una volta configurata la rete, possiamo eseguire il contenitore Jenkins utilizzando l'immagine Docker ufficiale di Jenkins.

Specifichiamo inoltre la rete e configuriamo un volume per la persistenza dei dati Jenkins. Il comando è il seguente:

esegui la finestra mobile \
--nome jenkins-docker \
--rm \
--stacca \
--privilegiato \
--rete Jenkins\
--alias-di-rete finestra mobile \
--env DOCKER_TLS_CERTDIR = / certificati \
--volume jenkins-docker-certi: / certificati / cliente \
--volume dati jenkins: / era / jenkins_casa \
--pubblicare 2376 : 2376 \
finestra mobile:da \
--driver-di-archiviazione sovrapposizione2



Il comando precedente avvia un contenitore Docker-in-Docker (DinD) denominato 'jenkins-docker' con privilegi elevati e configurazioni di rete.

Il flag –rm garantisce che il contenitore venga automaticamente rimosso quando si ferma. Il contenitore è connesso alla rete Jenkins con l'alias di rete come 'docker' creato nel passaggio precedente.

Impostiamo quindi le variabili di ambiente per i certificati Docker TLS e montiamo i volumi per l'archiviazione dei certificati e i dati Jenkins.

Nella sezione successiva pubblichiamo la porta 2376 per la comunicazione con il demone Docker.

Infine, specifichiamo l'immagine docker:dind e configuriamo il driver di archiviazione per utilizzare overlay2.

Accedi all'interfaccia utente Web Jenkins

Una volta avviato il contenitore, possiamo accedere all'istanza Jenkins da un browser Web utilizzando il file indirizzo.

Se desideri eseguire un semplice contenitore Jenkins, puoi utilizzare il seguente comando:

$ esecuzione della finestra mobile -D -P 8080 : 8080 -P 50000 : 50000 --nome Jenkins\
--rete Jenkins\
-In jenkins_home: / era / jenkins_casa \
Jenkins / jenkins: lt


Questo esegue il server Jenkins senza la necessità di configurare le altre funzionalità come volumi, porte di collegamento e altro.

È quindi possibile accedere all'istanza Jenkins su .


Una volta che Jenkins è pronto, il tuo browser ti consentirà di configurare rapidamente il server Jenkins con le proprietà che desideri.

Una volta configurato, è necessario sbloccare Jenkins specificando la password dell'amministratore. Puoi trovarlo eseguendo il seguente comando:

$ la finestra mobile registra Jenkins


Il comando mostra i log per il contenitore che include la password Jenkins.




Il passaggio successivo è scegliere e installare i plug-in che desideri utilizzare per la tua istanza Jenkins. Se utilizzi Jenkins per la prima volta, scegli i plugin consigliati.


Ciò dovrebbe consentire a Jenkins di scaricare e installare tutti i plug-in predefiniti che ti consentono di interagire facilmente con le pipeline Jenkins.

Conclusione

In questo tutorial hai imparato come configurare un server Jenkins come contenitore utilizzando Docker e l'immagine Jenkins ufficiale.