GNU/Linux >> Linux Esercitazione >  >> Panels >> Docker

Come gestire i plug-in del motore Docker

Docker Engine supporta un sistema di plug-in che ti consente di aggiungere funzionalità extra al runtime del contenitore. I plug-in per nuovi driver di archiviazione, stack di rete e sistemi di registrazione sono tutti disponibili gratuitamente.

Le versioni moderne di Docker Engine includono tutto il necessario per gestire i plug-in all'interno della CLI. Ci stiamo concentrando su questo sistema di plugin "gestito" in questa guida. È necessario installare e gestire manualmente i plug-in che utilizzano il sistema di plug-in legacy.

Tutto sui plug-in

I plugin estendono Docker Engine con nuove funzionalità troppo specifiche per essere fornite con l'installazione generale. Normalmente non interagisci direttamente con i plugin. Una volta installato un plug-in, puoi fare riferimento alle risorse che fornisce durante l'esecuzione di comandi Docker esistenti.

Esistono tre tipi principali di plugin:

  • Registrazione – Questi plug-in aggiungono nuovi driver di registrazione, consentendoti di archiviare i log in posizioni esterne a Docker Engine e al tuo computer host.
  • Rete – I plug-in di rete possono aggiungere il supporto per nuovi tipi di rete e funzionalità correlate.
  • Volume – I plug-in di archiviazione aggiungono filesystem e driver di volume a Docker, offrendoti più opzioni per i dati persistenti.

Sono disponibili anche plugin con funzionalità che non rientrano in queste aree principali. I plugin sono creati dai fornitori della comunità; puoi scriverne uno tuo utilizzando l'API dei plug-in pubblici e l'SDK Go.

I plugin sono distribuiti tramite Docker Hub. Puoi trovare i plugin disponibili andando alla pagina Esplora e selezionando la scheda Plugin in alto. Sono attualmente disponibili oltre 600 plugin.

Se scrivi il tuo plug-in, puoi inviarlo a Docker Hub con il docker plugin push comando. Funziona in modo simile al push di un'immagine nel registro pubblico. Devi eseguire docker plugin create prima di convertire il manifest e il filesystem del tuo plug-in in un pacchetto pronto per l'invio. Puoi ottenere maggiori informazioni sulla creazione di plug-in nei documenti Docker.

Installazione di un plug-in

I plug-in vengono installati con docker plugin install comando. Questo accetta il nome di un plug-in Docker Hub come argomento:

docker plugin install store/example/example-plugin:version

I riferimenti ai plug-in sembrano riferimenti alle immagini che iniziano con store/ . Gli stessi principi di codifica si applicano quando si specifica la versione del plug-in da installare. A differenza delle immagini, non puoi omettere la versione per estrarre automaticamente l'latest tag.

Puoi trovare il numero di versione di un plug-in e copiare un comando di installazione pronto per l'esecuzione facendo clic sul pulsante "Istruzioni per l'installazione" nella sua pagina Docker Hub. I plugin gratuiti ti permetteranno di passare a una nuova schermata con la normale casella di copia e incolla in alto a destra. Esegui il comando nel tuo terminale per avviare l'installazione del plugin.

I plugin di solito richiedono l'accesso ai privilegi dell'host in modo che possano fornire le loro funzionalità. Ad esempio, un plug-in di rete dovrà avere accesso all'host di Docker rete in modo da poter collegare nuove risorse. Riconosci la richiesta di autorizzazione digitando y e premendo Invio per completare l'installazione. Puoi saltare il prompt aggiungendo il --grant-all-permissions segnala alla tua install comando; questo è l'ideale per installazioni non interattive, ma rischia di concedere autorizzazioni non intenzionali se un plug-in si aggiorna con nuove funzionalità.

I plugin vengono abilitati automaticamente dopo l'installazione. L'abilitazione di un plugin consente l'esecuzione di script di preinstallazione. Usa il --disable flag per impostare lo stato predefinito di un plug-in disabilitato, lasciandolo inerte fino a quando non verrà attivato manualmente in seguito.

Visualizzazione dei dettagli del plug-in

Una volta installato, il tuo plug-in verrà visualizzato durante l'esecuzione di docker plugin ls :

docker plugin ls

Informazioni più dettagliate su un singolo plug-in possono essere ottenute da docker inspect comando. Questo accetta un ID plug-in o un tag e visualizza JSON dettagliato che descrive il manifest del plug-in:

docker inspect eccffc

Installazione offline

Docker CLI non dispone di un modo integrato per installare i plug-in offline. Tuttavia, puoi aggiungere plug-in a un'installazione Docker con air gap installandoli prima su un client di rete, quindi copiando i file del plug-in sul sistema offline.

Troverai i plugin installati all'interno di /var/lib/docker/plugins directory sul tuo host. Ogni plugin ottiene la propria sottodirectory denominata con il suo ID. Questi ID sono visibili nell'output del docker plugin ls comando.

Abilitazione e disabilitazione dei plug-in

I plugin possono essere abilitati o disabilitati. Vedrai lo stato corrente nell'ultima colonna di ls produzione. Un plug-in disabilitato non verrà caricato, quindi si comporterà come se non fosse installato.

Usa l'docker plugin enable e docker plugin disable comandi per modificare lo stato di un plugin. Fornisci l'ID di uno dei plugin installati come unico argomento del comando:

docker plugin enable eccffc

Ti potrebbe essere impedito di disabilitare un plug-in se viene utilizzato attivamente dalla configurazione di Docker Engine o da uno dei tuoi contenitori. Aggiunta di -f flag imporrà la disattivazione del plug-in, ma dovrebbe essere usato con parsimonia poiché rischi di uscire dal contenitore non intenzionale.

I plugin vengono disinstallati con il docker plugin rm comando. Fornisci l'ID o il nome di un plug-in per rimuoverlo completamente da Docker. rm ha gli stessi comportamenti di disable quando si gestiscono plug-in utilizzati attivamente e successivamente rimozioni forzate.

Modifica delle impostazioni del plug-in

Il sistema di plug-in di Docker include un meccanismo integrato per consentire agli autori di plug-in di esporre impostazioni personalizzabili. Come utente, puoi modificare queste impostazioni tramite il docker plugin set comando:

docker plugin set example-plugin setting-key=new-value

Sostituisci example-plugin con l'ID o il nome del plug-in di destinazione. Il valore della setting-key del plug-in l'impostazione verrà aggiornata a new-value .

Le impostazioni disponibili variano naturalmente da plug-in a plug-in. Dovrebbero essere documentati nella descrizione del plug-in su Docker Hub. La Docker CLI non ha un comando integrato per visualizzare tutte le impostazioni disponibili per un plug-in, ma vengono visualizzate in docker plugin inspect produzione. Cerca le Settings campo nella rappresentazione JSON di un plug-in; conterrà oggetti con Name e Settable campi per le opzioni che puoi modificare tramite la CLI.

Aggiornamento dei plug-in

I plug-in vengono aggiornati con l'docker plugin update comando. Come gli altri comandi, accetta un ID plug-in o un tag come argomento.

L'aggiornamento di un plug-in scaricherà e installerà l'ultima versione disponibile su Docker Hub. Se sei già nella versione più recente, il comando reinstallerà la versione corrente. Ti verrà chiesto di concedere al plug-in tutti i nuovi privilegi necessari. Il --grant-all-permissions flag è accettato per saltare il prompt in ambienti in cui l'input interattivo non è fattibile.

Non c'è modo di aggiornare tutti i plugin sul tuo sistema con un comando. È meglio iscriversi per rilasciare annunci dai fornitori dei plug-in, quindi applicare gli aggiornamenti all'installazione non appena diventano disponibili. Ciò garantirà che i tuoi plug-in rimangano protetti e supportati.

Riepilogo

L'ecosistema dei plugin di Docker ti consente di aggiungere funzionalità aggiuntive a Docker Engine. I plugin risiedono su Docker Hub e possono essere installati dal tuo terminale. L'interfaccia a riga di comando incorpora un programma di aggiornamento dei plug-in, ma funziona solo con un solo plug-in alla volta, non con l'intero catalogo.

Ora che sai come utilizzare e gestire i plug-in, puoi iniziare a esplorare Docker Hub per trovare le opzioni per migliorare il tuo flusso di lavoro. Il plug-in di registrazione elastica trasmette i log dei container Docker a un cluster di stack elastico, vSphere for Docker ti consente di utilizzare lo storage VMWare vSphere per i tuoi volumi persistenti e Weave Net porta la rete crittografata multicast a Docker. Se non vedi quello che ti serve, usa l'API del plug-in per provare a scrivere la tua soluzione che puoi pubblicare nella comunità più ampia tramite l'Hub.


Docker
  1. Come installare il motore Docker su Debian 9 Stretch Linux

  2. Come installare Docker Engine su Ubuntu:una guida passo passo

  3. Come rimuovere/disinstallare il plug-in Openh264 in Firefox 33?

  4. Come gestire i plugin di WordPress in Plesk

  5. Come valutare la sicurezza del motore Docker

Come gestire i plugin di Vim usando Vundle su Linux

Come installare Docker Portainer per gestire i container

Come distribuire e gestire un contenitore Docker MongoDB

Come rimuovere i contenitori Docker

Come fermare i container Docker

Come gestire i container Docker