Docker come sappiamo, è una piattaforma aperta per sviluppatori e amministratori di sistema per creare, spedire ed eseguire applicazioni distribuite, sia su laptop, VM per data center o cloud.
Oggi controlleremo come configurare Jenkins per creare immagini Docker basate su un Dockerfile. Di seguito sono riportati i passaggi di come è possibile utilizzare Docker all’interno di una pipeline CI/CD, utilizzando le immagini come artefatto di compilazione che può essere promosso in diversi ambienti e infine la produzione.
Passo #1 : Avvia Jenkins
Attualmente ho Jenkins in esecuzione sul contenitore Docker,se esegui il comando docker ps
ti mostrerà lo stato del contenitore.
Lancio di Jenkins dashboard
Passo #2 : Configurare il plugin di iniziare la costruzione di un Pannello Immagini.
Il nostro primo passo è configurare il plugin Docker. Ogni volta che una build di Jenkins richiede Docker, creerà un” Agente cloud ” tramite il plugin. L’agente sarà un contenitore Docker configurato per parlare con il nostro demone Docker.Il processo di compilazione Jenkins utilizzerà questo contenitore per eseguire la build e creare l’immagine prima di essere arrestato. L’immagine Docker verrà memorizzata nel demone Docker configurato. L’immagine può quindi essere inviata a un registro Docker pronto per la distribuzione.
- Una volta all’interno della Dashboard di Jenkins, selezionare Gestisci Jenkins a sinistra.
- Nella pagina di configurazione, selezionare Gestisci plugin.
- Gestisci pagina Plugin vi darà un’interfaccia a schede. Fare clic su Disponibile per visualizzare tutti i plugin Jenkins che possono essere installati.
- Utilizzando la casella di ricerca, cercare il plugin Docker. Ci sono più plugin Docker, selezionare plugin Docker utilizzando la casella di controllo.
- su questa pagina, installare Git plugin per ottenere il codice sorgente da un repository Git.
- Fare clic su Installa senza riavviare in basso.
- I plugin verranno ora scaricati e installati. Una volta completato, fare clic sul link Torna alla pagina superiore.
Una volta installati i plugin GIT di Docker &, ora possiamo andare avanti e configurare come lanciano i Contenitori Docker.
Prodotti da Amazon.in
- -17%
- Mastering Mobile –
- Prezzo: INR 828.00
- Stato: INR 999.00
- -17%
- la Consegna Continua con la finestra Mobile e Jenkins
- Prezzo: INR 829.00
- Stato: INR 999.00
- Mobile e Kubernetes per gli Sviluppatori Java
- Prezzo: INR 828.00
- Mobile su Windows
- Prezzo: INR 828.00
- Mobile: Fino e in Esecuzione – spese di Spedizione Affidabile Contenitori in Produzione
- Prezzo: Out of stock
- Mobile : Una guida Rapida Guida per Principianti
- Prezzo: Controlla su Amazon
- Mobile Immersione Profonda
- Prezzo: Controlla su Amazon
- Mobile: 5 Libri 1 – guida per Principianti+ Consigli & Trucchi+ Semplice & strategie Efficaci Best Practice & strategie
- Prezzo: Controlla su Amazon
- Ry del Git Tutorial
- Prezzo: Controlla su Amazon
” “
La configurazione verrebbe utilizzata dal plugin su quale immagine Docker utilizzare l’agente e su quale demone Docker eseguire i contenitori e si basa.Il plugin tratta Docker come un provider cloud, ruotando i contenitori come e quando la build li richiede.
Passo #3 : Configura agente Docker
- Nella Dashboard di Jenkins, selezionare Gestisci Jenkins.
- Selezionare Configura sistema per accedere alle impostazioni principali di Jenkins.
- In fondo, c’è un menu a discesa chiamato Aggiungi un nuovo cloud. Selezionare Finestra mobile dall’elenco.
- È ora possibile configurare le opzioni del contenitore. Impostare il nome dell’agente su docker-agent.
- L ‘”URL della finestra mobile” è dove Jenkins lancia il contenitore dell’agente. In questo caso, useremo lo stesso demone dell’esecuzione di Jenkins, ma nello scenario del mondo reale dovrebbe essere un’istanza separata in modo che possa essere ridimensionata.
- Usa la connessione di test per verificare che Jenkins possa parlare con il demone Docker. Si dovrebbe vedere il numero di versione Docker restituito.
Ora il plugin può comunicare con Docker,il passo successivo sarebbe configurare come avviare l’immagine Docker per l’agente.
- Utilizzando il menu a discesa Immagini, selezionare Aggiungi menu a discesa modello finestra mobile.
- Per l’immagine Docker, utilizzare esempio uno che ha client Docker benhall/dind-jenkins-agent. Questa immagine è configurata con un client Docker e disponibile in https://hub.docker.com/r/benhall/dind-jenkins-agent/
- Per abilitare le build per specificare Docker come agente di compilazione, impostare un’etichetta di docker-agent.
- Jenkins utilizza SSH per comunicare con gli agenti. Aggiungi un nuovo set di”Credenziali”. Il nome utente è jenkins e la password è jenkins.
- Infine, espandere la sezione Impostazioni contenitore facendo clic sul pulsante. Nella casella di testo” Volumi ” immettere / var / run / docker.calzino: / var / correre / finestra mobile.sock
- Fare clic su Salva.
Passo #4 : Testare la configurazione
Per testare la configurazione crea nuovo lavoro su
- Nella dashboard di Jenkins, selezionare Crea nuovi lavori di tipo Freestyle project & crea nuovo lavoro ex.Demo di Jenkins.
- La build dipenderà dall’accesso alla finestra mobile. Usando “Limita dove può essere eseguito questo progetto” possiamo definire l’etichetta che abbiamo impostato del nostro agente Docker configurato. Il set “Label Expression” per docker-agent. Dovresti avere una configurazione di “Label è servita da nessun nodo e 1 cloud”.
- Selezionare il tipo di repository come Git e impostare il Repository.Sto usando la mia posizione GIT https://github.com/karthi4india/jenkins/.
- Ora possiamo aggiungere una nuova fase di compilazione utilizzando il menu a discesa. Selezionare Esegui Shell.
- Dockerfile si occupa della build, Jenkins deve solo chiamare build e specificare un nome descrittivo.
Costruire passo :
ls
docker info
docker build -t jenkins-demo:${BUILD_NUMBER} .
docker tag jenkins-demo:${BUILD_NUMBER} jenkins-demo:latest
docker images
Il primo comando elenca tutti i file nella directory che verranno creati. Quando si chiama docker build usiamo il numero di build di Jenkins come tag immagine. Questo ci permette di versione le nostre immagini Docker. Taggiamo anche la build con l’ultima.
File finestra mobile:
FROM scratch
EXPOSE 80
COPY http-server /
CMD
Sul lato sinistro, selezionare Crea ora. Dovresti vedere una build pianificata con un messaggio”(in attesa — In attesa del prossimo esecutore disponibile)”.
Jenkins sta avviando il contenitore e si connette ad esso tramite SSH. A volte questo può richiedere un momento o due.
Puoi vedere i progressi usando
docker logs --tail=10 jenkins
Una volta completata la build dovresti vedere l’immagine e i tag usando la CLI Docker
docker images
Ti piace questo post? Non dimenticare di condividerlo!