Come installare e utilizzare Docker su Ubuntu 20.04


Docker è una piattaforma aperta per lo sviluppo, la spedizione e l'esecuzione di applicazioni che utilizzano la virtualizzazione a livello di sistema operativo per fornire software in pacchetti chiamati container Container. Una volta distribuito, use condivide le risorse del sistema operativo host. Ciò significa che sono molto più efficienti degli hypervisor (macchine virtuali) in termini di risorse di sistema. Invece di virtualizzare l'hardware, i container si basano su una singola istanza Linux.

Nel seguente tutorial imparerai come installare e utilizzare Docker sul tuo sistema operativo Ubuntu 20.04.

Prerequisiti

  • Sistema operativo consigliato: Ubuntu 20.04 - facoltativo (Ubuntu 21.04)
  • Account utente: Un account utente con accesso sudo o root.
  • Pacchetti richiesti: arricciare

Aggiornamento del sistema operativo

Aggiorna il tuo Ubuntu 20.04 sistema operativo per assicurarsi che tutti i pacchetti esistenti siano aggiornati:

sudo apt update && sudo apt upgrade

Installa i pacchetti richiesti

Per installare correttamente Docker, dovrai installare i seguenti pacchetti; esegui questo comando se non sei sicuro; non danneggerà il tuo sistema.

sudo apt install apt-transport-https ca-certificates curl software-properties-common curl

pubblicità


Installa Docker

Importa chiave e repository GPG

Il primo passo nell'installazione di Docker è importare la chiave GPG con il seguente comando:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Output di esempio in caso di successo:

OK

Quindi, importa il repository nel tuo elenco di sorgenti APT come segue:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

Ora aggiorna il tuo elenco di repository APT per riflettere la nuova aggiunta di repository:

sudo apt update

Installa Docker

Con la chiave GPG e il repository importati, ora puoi procedere all'installazione di Docker utilizzando il seguente comando:

sudo apt install docker-ce

Esempio di output:

Come installare e utilizzare Docker su Ubuntu 20.04

Tipologia Y, quindi premere il tasto PULSANTE INVIO per procedere con l'installazione.

Quindi, conferma l'installazione controllando la versione/build come segue:

docker -v

Esempio di output:

Docker version 20.10.8, build 3967b7d

Un'alternativa è usare la politica apt-cache:

sudo apt-cache policy docker-ce

Esempio di output:

Ora, per impostazione predefinita, il servizio per Docker dovrebbe essere avviato automaticamente su Ubuntu 20.04. Per verificarlo, usa il comando di stato systemctl controllare:

systemctl status docker

Esempio di output:

Se per caso Docker non è stato attivato, utilizzare il seguente comando per avviare il servizio:

sudo systemctl start docker

Per consentire a Docker di avviarsi all'avvio del sistema, utilizzare il seguente comando:

sudo systemctl enable docker

Qualche altro utile comandi systemctl sapere per Docker:

Riavvia finestra mobile:

sudo systemctl restart docker

Interrompi Docker:

sudo systemctl stop docker

Disabilita Docker dall'avvio automatico all'avvio del sistema:

sudo systemctl disable docker

Facoltativo: aggiungi un utente al gruppo Docker

Per impostazione predefinita, Docker può essere utilizzato solo con i comandi root e sudo. Per la maggior parte degli utenti, in particolare quelli che sono gli unici utenti del sistema operativo, non è un grosso problema, ma se vuoi eliminare i comandi extra, devi aggiungere il tuo nome utente al gruppo Docker.

Esempio:

docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.

Per evitare ciò ed evitare di utilizzare il comando root o sudo, aggiungi il tuo nome utente a Docker al suo gruppo di utenti. Per fare ciò, utilizzare il seguente comando:

sudo usermod -aG docker ${USER}

Successivamente, per applicare la modifica, sarà necessario disconnettersi e riconnettersi. Per fare ciò, utilizzare il seguente comando:

su - ${USER}

Ora dovresti confermare che il tuo utente è stato aggiunto a scaricatore di porto raggruppare digitando:

id -nG

Esempio di output:

joshua sudo docker

In alternativa, per aggiungere un altro utente al gruppo docker, puoi farlo utilizzando il seguente comando:

sudo usermod -aG docker username

pubblicità


Come usare Docker

Come usare i comandi

Per utilizzare Docker, dovrai imparare le opzioni e i comandi. Un esempio di come appare:

sudo docker [option] [command]

Ora, un buon punto di partenza è visualizzare tutti i comandi disponibili:

Usage:  docker [OPTIONS] COMMAND

A self-sufficient runtime for containers

Options:
      --config string      Location of client config files (default
                           "/home/joshua/.docker")
  -c, --context string     Name of the context to use to connect to the
                           daemon (overrides DOCKER_HOST env var and
                           default context set with "docker context use")
  -D, --debug              Enable debug mode
  -H, --host list          Daemon socket(s) to connect to
  -l, --log-level string   Set the logging level
                           ("debug"|"info"|"warn"|"error"|"fatal")
                           (default "info")
      --tls                Use TLS; implied by --tlsverify
      --tlscacert string   Trust certs signed only by this CA (default
                           "/home/joshua/.docker/ca.pem")
      --tlscert string     Path to TLS certificate file (default
                           "/home/joshua/.docker/cert.pem")
      --tlskey string      Path to TLS key file (default
                           "/home/joshua/.docker/key.pem")
      --tlsverify          Use TLS and verify the remote
  -v, --version            Print version information and quit

Management Commands:
  app*        Docker App (Docker Inc., v0.9.1-beta3)
  builder     Manage builds
  buildx*     Build with BuildKit (Docker Inc., v0.6.1-docker)
  config      Manage Docker configs
  container   Manage containers
  context     Manage contexts
  image       Manage images
  manifest    Manage Docker image manifests and manifest lists
  network     Manage networks
  node        Manage Swarm nodes
  plugin      Manage plugins
  scan*       Docker Scan (Docker Inc., v0.8.0)
  secret      Manage Docker secrets
  service     Manage services
  stack       Manage Docker stacks
  swarm       Manage Swarm
  system      Manage Docker
  trust       Manage trust on Docker images
  volume      Manage volumes

Commands:
  attach      Attach local standard input, output, and error streams to a running container
  build       Build an image from a Dockerfile
  commit      Create a new image from a container's changes
  cp          Copy files/folders between a container and the local filesystem
  create      Create a new container
  diff        Inspect changes to files or directories on a container's filesystem
  events      Get real time events from the server
  exec        Run a command in a running container
  export      Export a container's filesystem as a tar archive
  history     Show the history of an image
  images      List images
  import      Import the contents from a tarball to create a filesystem image
  info        Display system-wide information
  inspect     Return low-level information on Docker objects
  kill        Kill one or more running containers
  load        Load an image from a tar archive or STDIN
  login       Log in to a Docker registry
  logout      Log out from a Docker registry
  logs        Fetch the logs of a container
  pause       Pause all processes within one or more containers
  port        List port mappings or a specific mapping for the container
  ps          List containers
  pull        Pull an image or a repository from a registry
  push        Push an image or a repository to a registry
  rename      Rename a container
  restart     Restart one or more containers
  rm          Remove one or more containers
  rmi         Remove one or more images
  run         Run a command in a new container
  save        Save one or more images to a tar archive (streamed to STDOUT by default)
  search      Search the Docker Hub for images
  start       Start one or more stopped containers
  stats       Display a live stream of container(s) resource usage statistics
  stop        Stop one or more running containers
  tag         Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
  top         Display the running processes of a container
  unpause     Unpause all processes within one or more containers
  update      Update configuration of one or more containers
  version     Show the Docker version information
  wait        Block until one or more containers stop, then print their exit codes

Per visualizzare ulteriori informazioni su un comando, utilizzare il comando seguente per visualizzare ulteriori informazioni.

sudo docker <command> --help

Ad esempio, il tutorial mostrerà informazioni di aiuto sul comando push nella finestra mobile:

Per visualizzare le informazioni a livello di sistema sulla finestra mobile sul tuo sistema, usa il seguente comando:

sudo docker info

Esempio di output:

Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Build with BuildKit (Docker Inc., v0.6.1-docker)
  scan: Docker Scan (Docker Inc., v0.8.0)

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 20.10.8
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: e25210fe30a0a703442421b0f60afac609f950a3
 runc version: v1.0.1-0-g4144b63
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: default
 Kernel Version: 5.11.0-34-generic
 Operating System: Ubuntu 20.04.3 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 3.81GiB
 Name: ubuntu
 ID: CLA2:OOBD:5BJW:4WPT:4Y7L:ZGS6:VNIL:JGV4:ZTUA:IG3S:BGX7:Z626
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Come testare l'accessibilità delle immagini Docker

Per capire come funziona Docker, i container Docker sono creati da immagini Docker estratte da Hub Docker di proprietà e gestito dalla società che ha creato Docker. L'hub Docker consente a chiunque di ospitare la propria immagine Docker, quindi la maggior parte delle applicazioni e delle distribuzioni Linux sono ospitate sull'hub.

Il primo test consiste nell'assicurarsi che l'hub Docker sia accessibile e che sia possibile scaricare immagini dall'hub Docker. Per fare ciò, utilizzare il seguente comando:

sudo docker run hello-world

Ora, la prima cosa che potresti notare è l'output "Impossibile trovare l'immagine 'hello-world:latest' a livello locale." Non preoccuparti; questo è normale e, a seconda della connessione Internet, l'applicazione docker dovrebbe estrarre una nuova immagine dall'hub Docker, il repository predefinito.

Output di esempio in caso di successo:

Ora che l'immagine Docker è stata scaricata come sopra, Docker ha creato un nuovo contenitore dall'immagine denominata ciao-mondo.

Come cercare le immagini Docker

Per cercare immagini che si trovano su Docker Hub utilizzando il pulsante comando di ricerca docker.

Esempio:

docker search ubuntu

Esempio di output:

Come sopra, un elenco di tutte le immagini i cui nomi corrispondono alla stringa del comando di ricerca che hai eseguito. Dopo la descrizione, puoi trovare tre colonne.

  • STELLE - Numero di voti ricevuti nella comunità, più alto è sempre buono.
  • UFFICIALE – Immagini create e supportate dalla società Docker.
  • AUTOMATIZZATO – Immagini create dalla community, non approvate ufficialmente dalla società Docker. Utilizzare a proprio rischio.

Come tirare l'immagine Docker

Dopo aver cercato un'immagine, puoi estrarli con il comando docker pull.

docker pull ubuntu

Esempio di output:

Quindi, verifica che l'immagine esista sul tuo sistema:

docker images

Esempio di output:

Come sopra, hai il immagine ubuntu e l'originale ciao-mondo immagine creato in precedenza nel tutorial a scopo di test. L'output fornisce anche informazioni su tag, ID immagine, creazione e dimensione.

Come eseguire un contenitore Docker da Image

Ora che hai imparato le basi, ora puoi eseguire l'immagine Ubuntu che hai scaricato. Per fare ciò, usa il seguente comando con il flag -it che ti permetterà di accedere con il contenitore usando l'accesso alla shell:

docker run -it ubuntu

Nota, come con il ciao-parola esempio, se un'immagine non è stata scaricata, il comando di esecuzione della finestra mobile viene eseguito, il client Docker scaricherà prima l'immagine, quindi eseguirà il contenitore utilizzandola.

Ora sarai nel contenitore della shell, come puoi vedere con il seguente output:

root@75b1115bacfd:/# 

L'output mostrerà il tuo ID contenitore, che nel caso del tutorial è 75b1115bacfd. Si prega di notare questo ID, poiché sarà necessario per scopi di gestione, come la rimozione del contenitore in una fase successiva.

Come installare un pacchetto in Docker Container

Installare i pacchetti all'interno del tuo contenitore Docker è abbastanza semplice; è fondamentalmente lo stesso che operare nel tuo sistema Ubuntu principale.

Ad esempio, puoi testare installando alcuni pacchetti.

Installa l'applicazione web Nginx:

apt install nginx

Esempio di output:

Tipologia Y, quindi premere il tasto PULSANTE INVIO per procedere con l'installazione.

Molto probabilmente riceverai una richiesta per selezionare la tua area geografica alla prima installazione di un pacchetto.

Esempio:

Seleziona la località geografica più vicina a te digitando il numero e poi premendo il tasto TASTO INVIO.

Successivamente, ti verrà chiesto di selezionare la città più vicina; come per la posizione geografica, seleziona la posizione dell'armadio e premi il tasto TASTO INVIO.

Esempio:

Verifica l'installazione di Nginx sul tuo contenitore Docker utilizzando il seguente comando di versione:

nginx -v
nginx version: nginx/1.18.0 (Ubuntu)

Come aggiornare i pacchetti in Docker Container

Per aggiornare i pacchetti all'interno del contenitore Docker, puoi utilizzare il comando apt update senza sudo o root perché operi già come utente root del contenitore.

Esempio:

apt update

Quindi aggiorna come faresti come se stessi operando nel tuo sistema operativo Ubuntu:

apt upgrade 

Come rimuovere i pacchetti in Docker Container

Il processo per rimuovere i pacchetti nel tuo contenitore Docker è lo stesso dell'installazione nel tuo contenitore. Per rimuovere il pacchetto che hai installato in precedenza, per il nostro esempio era Nginx, usa il seguente comando:

apt autoremove nginx

Esempio di output:

Tipologia Y, quindi premere il tasto PULSANTE INVIO per procedere con la disinstallazione.

Come uscire da Docker Container

Per uscire dal tuo contenitore Docker, usa il seguente comando:

exit

Come elencare i container Docker

Ora che sei uscito come sopra, torna al tuo sistema operativo principale. Puoi utilizzare il comando docker ps che elencherà il comando Docker attivato nel tuo sistema:

sudo docker ps

Esempio di output:

Un comando alternativo è usare il docker ps con il -una bandiera, e questo elencherà tutti i contenitori Docker che sono sia attivi che inattivi.

sudo docker ps -a

Esempio di output:

Come puoi vedere sopra, c'è un contenitore attivo e due non attivi.

Un altro comando utile è il docker ps con il -l bandiera, elenco l'ultimo contenitore creato.

sudo docker ps -l

Esempio di output:

Annotare i nomi dei contenitori; puoi usarli al posto dell'IDS del contenitore; ad esempio, sopra, viene chiamato l'ID contenitore 5c9785bbfd75 meditando_lehmann.

Come avviare un contenitore Docker

Per avviare un container Docker, devi ottenere il ID contenitore che, se dimenticato, può essere trovato rapidamente utilizzando il comando docker ps. Quindi, esegui il seguente comando come esempio di avvio di un contenitore:

sudo docker start 5c9785bbfd75

Per verificare lo stato per vedere se è attivo, usa il comando docker ps:

sudo docker ps

Esempio di output:

Come puoi vedere, l'ID contenitore 5c9785bbfd75 è ora attivo.

Come fermare un container Docker

Arrestare un container Docker equivale ad avviare il container ma al contrario con l'opzione di arresto utilizzata.

sudo docker stop 5c9785bbfd75

Ora usa di nuovo il comando docker ps per vedere lo stato:

Esempio di output:

Come sopra, puoi vedere che l'ID contenitore 5c9785bbfd75 è ora inattivo.

Come rimuovere un contenitore Docker

Una volta che hai finito o non hai più bisogno del contenitore, puoi rimuoverlo usando il comando docker rm con il tasto ID contenitore oppure nome del contenitore. Per esempio, rimuovi il contenitore di prova ciao-mondo.

sudo docker rm 7f00ad33be63

In alternativa, puoi eliminare il tuo ID contenitore con il nome assegnato da Docker. Nel tutorial, il L'ID contenitore 7f00ad33be63 (contenitore ciao-mondo) si chiama nifty_gagarin. Per rimuoverlo, utilizzare quanto segue:

sudo docker rm nifty_gagarin

Esempio di output:

Commenti e Conclusione

Nel tutorial, hai imparato come installare Docker su Ubuntu 20.04, lavorare con immagini e contenitori. Da qui, puoi continuare a imparare come inviare e confermare le modifiche all'hub Docker se devi condividere o eseguire il backup delle immagini. La registrazione di un account è gratuita e la maggior parte dei piani sono molto convenienti, con il business più alto a 21 dollari; se interessato, visita la pagina di registrazione e creare un account.

Nel complesso, Docker è molto popolare in quanto ha rivoluzionato il modo in cui lo sviluppo viene svolto in questi giorni con la sua facilità d'uso, la sicurezza e i requisiti delle risorse fisiche sono meno di una macchina virtuale come visto la piattaforma alle stelle nel settore del software. Ora infuria il dibattito su quale sia più sicuro tra macchine virtuali e docker. Tuttavia, entrambi possono essere pericolosi e le buone pratiche possono risolvere la maggior parte dei problemi di sicurezza con qualsiasi virtualizzazione tu scelga.

1 pensiero su "Come installare e utilizzare Docker su Ubuntu 20.04"

Lascia un tuo commento