androide

Come installare e utilizzare la finestra mobile su centos 7

[CENTOS] - #55 Docker Installazione e start del primo Container

[CENTOS] - #55 Docker Installazione e start del primo Container

Sommario:

Anonim

Docker è una tecnologia di containerizzazione che consente di creare, testare e distribuire rapidamente applicazioni come container portatili e autosufficienti che possono essere eseguiti praticamente ovunque.

In questo tutorial, vedremo come installare Docker CE su CentOS 7 ed esploreremo i concetti e i comandi di base di Docker.

Prerequisiti

Prima di procedere con questa esercitazione, assicurarsi che siano soddisfatti i seguenti prerequisiti:

  • Server CentOS 7 Si è effettuato l'accesso come utente non root con privilegi sudo. Dai un'occhiata a questa guida su come creare un nuovo utente sudo.

Installa Docker su CentOS

Sebbene il pacchetto Docker sia disponibile nel repository ufficiale CentOS 7, potrebbe non essere sempre l'ultima versione. L'approccio consigliato è installare Docker dai repository Docker.

Per installare Docker sul tuo server CentOS 7, procedi nel seguente modo:

  1. Inizia aggiornando i pacchetti di sistema e installa le dipendenze richieste:

    sudo yum update sudo yum install yum-utils device-mapper-persistent-data lvm2

    Quindi, esegui il comando seguente che aggiungerà il repository stabile Docker al tuo sistema:

    sudo yum-config-manager --add-repo

    Ora che il repository Docker è abilitato, installa l'ultima versione di Docker CE (Community Edition) usando yum digitando:

    sudo yum install docker-ce

    Una volta installato il pacchetto Docker, avvia il daemon Docker e abilitalo ad avviarsi automaticamente all'avvio:

    sudo systemctl start docker sudo systemctl enable docker

    Per verificare che il servizio Docker sia in esecuzione, digitare:

    sudo systemctl status docker

    L'output dovrebbe assomigliare a questo:

    ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Wed 2018-10-31 08:51:20 UTC; 7s ago Docs: https://docs.docker.com Main PID: 2492 (dockerd) CGroup: /system.slice/docker.service ├─2492 /usr/bin/dockerd └─2498 docker-containerd --config /var/run/docker/containerd/containerd.toml

    Al momento in cui scrivo, l'attuale versione stabile di Docker è, 18.06.1 , per stampare il tipo di versione Docker:

    docker -v

    Docker version 18.06.1-ce, build e68fc7a

Esecuzione del comando Docker senza Sudo

Per impostazione predefinita, Docker richiede i privilegi di amministratore. Se si desidera eseguire i comandi Docker come utente non root senza anteporre sudo è necessario aggiungere l'utente al gruppo docker creato durante l'installazione del pacchetto Docker CE. Puoi farlo digitando:

sudo usermod -aG docker $USER

$USER è una variabile di ambiente che contiene il tuo nome utente.

Disconnettersi e riconnettersi in modo da aggiornare l'appartenenza al gruppo.

Per verificare che Docker sia installato correttamente e che sia possibile eseguire i comandi docker senza sudo, emettere il seguente comando che scaricherà un'immagine di prova, eseguirà in un contenitore, stampa un messaggio "Ciao da Docker" ed esce:

docker container run hello-world

L'output dovrebbe essere simile al seguente:

Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:f5233545e43561214ca4891fd1157e1c3c563316ed8e237750d59bde73361e77 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.

Interfaccia della riga di comando Docker

Ora che abbiamo un'installazione Docker funzionante, passiamo alla sintassi di base della CLI docker.

La riga di comando della finestra mobile assume la forma seguente:

docker

Puoi elencare tutti i comandi disponibili digitando la docker senza parametri:

docker

docker --help

Immagini Docker

Un'immagine Docker è composta da una serie di livelli che rappresentano le istruzioni nel file Docker dell'immagine che compongono un'applicazione software eseguibile. Un'immagine è un file binario immutabile che include l'applicazione e tutte le altre dipendenze come binari, librerie e istruzioni necessarie per eseguire l'applicazione. In breve, un'immagine Docker è essenzialmente un'istantanea di un contenitore Docker.

Docker Hub è un servizio di registro basato su cloud che tra le altre funzionalità viene utilizzato per conservare le immagini Docker in un repository pubblico o privato.

Per cercare un'immagine nel repository Docker Hub basta usare il sottocomando di search . Ad esempio, per cercare l'immagine CentOS, eseguire:

docker search centos

L'output dovrebbe essere simile al seguente:

NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 4257 ansible/centos7-ansible Ansible on Centos7 109 jdeathe/centos-ssh CentOS-6 6.9 x86_64 / CentOS-7 7.4.1708 x86_… 94 consol/centos-xfce-vnc Centos container with "headless" VNC session… 52 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 40 tutum/centos Simple CentOS docker image with SSH access 39

Come puoi vedere i risultati della ricerca stampa una tabella con cinque colonne, NAME , DESCRIPTION , STARS , OFFICIAL e AUTOMATED . L'immagine ufficiale è un'immagine che Docker sviluppa in collaborazione con partner a monte.

Se vogliamo scaricare la build ufficiale di CentOS 7, possiamo farlo utilizzando il sottocomando image pull :

docker image pull centos

Using default tag: latest latest: Pulling from library/centos 469cfcc7a4b3: Pull complete Digest: sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Status: Downloaded newer image for centos:latest

A seconda della velocità di Internet, il download potrebbe richiedere alcuni secondi o alcuni minuti. Una volta scaricata l'immagine, possiamo elencare le immagini con:

docker image ls

L'output dovrebbe essere simile al seguente:

REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB

Se per qualche motivo vuoi eliminare un'immagine puoi farlo con il sottocomando image rm :

docker image rm centos

Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0

Contenitori Docker

Un'istanza di un'immagine è chiamata contenitore. Un contenitore rappresenta un runtime per una singola applicazione, processo o servizio.

Potrebbe non essere il confronto più appropriato ma se sei un programmatore puoi pensare a un'immagine Docker come classe e contenitore Docker come istanza di una classe.

È possibile avviare, arrestare, rimuovere e gestire un contenitore con il sottocomando docker container .

Il comando seguente avvierà un contenitore Docker basato sull'immagine CentoOS. Se non hai l'immagine localmente, la scaricherà prima:

docker container run centos

A prima vista, può sembrarti che non sia successo nulla. Bene, questo non è vero. Il contenitore CentOS si arresta immediatamente dopo l'avvio perché non ha un processo di lunga durata e non abbiamo fornito alcun comando, quindi il contenitore si è avviato, ha eseguito un comando vuoto e quindi è uscito.

L' -it ci consente di interagire con il contenitore tramite la riga di comando. Per avviare un tipo di contenitore interattivo:

docker container run -it centos /bin/bash

Come puoi vedere dall'output una volta avviato il contenitore, il prompt dei comandi viene modificato, il che significa che ora stai lavorando dall'interno del contenitore:

#

Per elencare i contenitori in esecuzione:, digitare:

docker container ls

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli Se non si dispone di contenitori in esecuzione, l'output sarà vuoto.

Per visualizzare sia i contenitori in esecuzione che quelli fermati, passare l' -a :

docker container ls -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli c55680af670c centos "/bin/bash" 30 minutes ago Exited (0) 30 minutes ago modest_hawking c6a147d1bc8a hello-world "/hello" 20 hours ago Exited (0) 20 hours ago sleepy_shannon

Per eliminare uno o più contenitori è sufficiente copiare l'ID contenitore (o ID) dall'alto e incollarli dopo il sottocomando container rm :

docker container rm c55680af670c

Conclusione

Hai imparato come installare Docker sul tuo computer CentOS 7 e come scaricare le immagini Docker e gestire i contenitori Docker. Potresti anche leggere informazioni su Docker Compose, che ti consente di definire ed eseguire applicazioni Docker multi-container.

Questo tutorial graffia a malapena la superficie dell'ecosistema Docker. In alcuni dei nostri prossimi articoli, continueremo ad approfondire altri aspetti di Docker. Per ulteriori informazioni su Docker, consulta la documentazione ufficiale di Docker.

docker centos