Kako instalirati i koristiti Docker na Ubuntu 20.04


Docker je otvorena platforma za razvoj, isporuku i pokretanje aplikacija koje koriste virtualizaciju na razini OS-a za isporuku softvera u paketima koji se nazivaju kontejneri Kontejneri. Nakon implementacije, koristite dijeljene resurse operativnog sustava hosta. To znači da su mnogo učinkovitiji od hipervizora (virtualnih strojeva) u smislu resursa sustava. Umjesto virtualizacije hardvera, spremnici počivaju na jednoj instanci Linuxa.

U sljedećem tutorialu naučit ćete kako instalirati i koristiti Docker na vašem Ubuntu 20.04 operativnom sustavu.

Preduvjeti

  • Preporučeni OS: Ubuntu 20.04 - neobavezna (Ubuntu 21.04)
  • Korisnički račun: Korisnički račun sa sudo ili root pristupom.
  • Potrebni paketi: sklupčati

Ažuriranje operativnog sustava

Ažurirajte svoj Ubuntu 20.04 operativni sustav kako biste bili sigurni da su svi postojeći paketi do danas:

sudo apt update && sudo apt upgrade

Instalirajte potrebne pakete

Da biste uspješno instalirali Docker, morat ćete instalirati sljedeće pakete; pokrenite ovu naredbu ako niste sigurni; neće naštetiti vašem sustavu.

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

Oglas


Instalirajte Docker

Uvezite GPG ključ i spremište

Prvi korak u instalaciji Dockera je uvoz GPG ključa sljedećom naredbom:

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

Primjer izlaza ako je uspješan:

OK

Zatim uvezite spremište na svoj popis izvora APT-a na sljedeći način:

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

Sada osvježite svoj popis APT spremišta kako biste odražavali novi dodatak spremišta:

sudo apt update

Instalirajte Docker

Uz uvezeni GPG ključ i spremište, sada možete nastaviti s instalacijom Dockera pomoću sljedeće naredbe:

sudo apt install docker-ce

Primjer rezultata:

Kako instalirati i koristiti Docker na Ubuntu 20.04

Tip Y, zatim pritisnite GUMB ENTER za nastavak instalacije.

Zatim potvrdite instalaciju provjerom verzije/gradnje na sljedeći način:

docker -v

Primjer rezultata:

Docker version 20.10.8, build 3967b7d

Alternativa je korištenje pravila apt-cache:

sudo apt-cache policy docker-ce

Primjer rezultata:

Sada, prema zadanim postavkama, usluga za Docker bi se trebala automatski pokrenuti na Ubuntu 20.04. Da biste to potvrdili, koristite systemctl status naredba provjeriti:

systemctl status docker

Primjer rezultata:

Ako kojim slučajem Docker nije aktiviran, upotrijebite sljedeću naredbu za pokretanje usluge:

sudo systemctl start docker

Da biste omogućili pokretanje Dockera pri pokretanju sustava, upotrijebite sljedeću naredbu:

sudo systemctl enable docker

Još neke korisne systemctl naredbe znati za Docker:

Ponovno pokrenite Docker:

sudo systemctl restart docker

Zaustavite Docker:

sudo systemctl stop docker

Onemogućite Docker iz automatskog pokretanja pri pokretanju sustava:

sudo systemctl disable docker

Izborno – dodajte korisnika u Docker grupu

Prema zadanim postavkama, Docker se može koristiti samo s naredbama root i sudo. Za većinu korisnika, posebno onih koji su jedini korisnici na operativnom sustavu, to nije velika stvar, ali ako želite ukinuti dodatne naredbe, morate dodati svoje korisničko ime u Docker grupu.

Primjer:

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

Da biste to izbjegli i izbjegli korištenje naredbe root ili sudo, dodajte svoje korisničko ime u Docker korisnička grupa. Da biste to učinili, koristite sljedeću naredbu:

sudo usermod -aG docker ${USER}

Zatim, da biste primijenili promjenu, morat ćete se odjaviti i ponovno prijaviti. Da biste to učinili, koristite sljedeću naredbu:

su - ${USER}

Sada biste trebali potvrditi da je vaš korisnik dodan u lučki radnik grupirati upisivanjem:

id -nG

Primjer rezultata:

joshua sudo docker

Alternativno, da dodate drugog korisnika u docker grupu, možete to učiniti pomoću sljedeće naredbe:

sudo usermod -aG docker username

Oglas


Kako koristiti Docker

Kako koristiti naredbe

Da biste koristili Docker, morat ćete naučiti opcije i naredbe. Primjer kako ovo izgleda:

sudo docker [option] [command]

Sada je dobra početna točka pogledati sve dostupne naredbe:

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

Da biste vidjeli više informacija o naredbi, koristite sljedeću naredbu za prikaz više informacija.

sudo docker <command> --help

Na primjer, vodič će prikazati informacije pomoći o push naredbi u dockeru:

Za pregled informacija o Docker-u u cijelom sustavu na vašem sustavu, koristite sljedeću naredbu:

sudo docker info

Primjer rezultata:

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

Kako testirati Docker Slike su dostupne

Da biste razumjeli kako Docker funkcionira, Docker spremnici su izgrađeni od Docker slika izvučenih Docker čvorište koji je u vlasništvu i održava tvrtka koja je stvorila Docker. Docker Hub omogućuje svakome da ugosti svoju Docker sliku, tako da se većina aplikacija i Linux distribucija nalazi na Hubu.

Prvi test je provjeriti je li Docker Hub dostupan, a slike možete preuzeti s Docker Huba. Da biste to učinili, koristite sljedeću naredbu:

sudo docker run hello-world

Sada, prva stvar koju možete primijetiti je izlaz "Lokalno nije moguće pronaći sliku 'hello-world:latest'." Ne brini; to je normalno, a ovisno o vašoj internetskoj vezi, docker aplikacija bi trebala povući novu sliku iz Docker Huba, zadanog spremišta.

Primjer izlaza ako je uspješan:

Sada kada je Docker slika preuzeta kao gore, Docker je stvorio novi spremnik od slike pod nazivom Pozdrav svijete.

Kako tražiti Docker slike

Za traženje slika koje se nalaze na Docker Hubu pomoću naredba za pretraživanje dockera.

Primjer:

docker search ubuntu

Primjer rezultata:

Kao što je gore navedeno, popis svih slika čiji nazivi odgovaraju nizu naredbe pretraživanja koji ste izvršili. Nakon opisa možete pronaći tri stupca.

  • ZVIJEZDE - Broj primljenih glasova u zajednici, veći je uvijek dobro.
  • SLUŽBENO - Slike koje je izgradila i podržana tvrtka Docker.
  • AUTOMATIZIRANI – Slike koje su napravljene iz zajednice, a nisu službeno potvrđene od strane tvrtke Docker. Koristite na vlastitu odgovornost.

Kako povući Docker Image

Nakon traženja slike, možete ih povući pomoću docker pull naredba.

docker pull ubuntu

Primjer rezultata:

Zatim provjerite postoji li slika na vašem sustavu:

docker images

Primjer rezultata:

Kao što je gore navedeno, dobili ste ubuntu sliku i originalni slika zdravog svijeta kreirali ste ranije u vodiču za potrebe testiranja. Izlaz također daje informacije o oznaci, ID-u slike, izradi i veličini.

Kako pokrenuti Docker kontejner sa slike

Sada kada ste naučili osnove, sada možete pokrenuti sliku ubuntua koju ste preuzeli. Da biste to učinili, upotrijebite sljedeću naredbu s oznakom -it koja će vam omogućiti pristup spremniku pomoću pristupa ljuske:

docker run -it ubuntu

Napomena, kao i kod pozdrav-riječ na primjer, ako slika nije preuzeta, docker run naredba se izvrši, Docker klijent će prvo preuzeti sliku, a zatim pokrenuti spremnik pomoću nje.

Sada ćete biti u spremniku ljuske, kao što možete vidjeti sa sljedećim izlazom:

root@75b1115bacfd:/# 

Izlaz će prikazati vaš ID kontejnera, što je u slučaju tutoriala 75b1115bacfd. Zabilježite ovaj ID jer će vam trebati za potrebe upravljanja, kao što je uklanjanje spremnika u kasnijoj fazi.

Kako instalirati paket u Docker Container

Instaliranje paketa unutar vašeg Docker spremnika prilično je jednostavno; u osnovi je isto kao i rad u vašem glavnom Ubuntu sustavu.

Na primjer, možete testirati instaliranjem nekih paketa.

Instalirajte Nginx web-aplikaciju:

apt install nginx

Primjer rezultata:

Tip Y, zatim pritisnite GUMB ENTER za nastavak instalacije.

Vjerojatno ćete dobiti upit da odaberete svoje geografsko područje kada prvi put instalirate paket.

Primjer:

Odaberite zemljopisnu lokaciju koja vam je najbliža tako da upišete broj, a zatim pritisnete ENTER TIPKA.

Zatim će se od vas tražiti da odaberete grad ormara; kao i kod zemljopisnog položaja, odaberite lokaciju ormara i pritisnite ENTER TIPKA.

Primjer:

Provjerite instalaciju Nginxa na vašem Docker spremniku pomoću sljedeće naredbe verzije:

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

Kako ažurirati pakete u Docker kontejneru

Za ažuriranje paketa unutar Docker spremnika, možete koristiti naredbu apt update bez sudo ili root jer već radite kao root korisnik spremnika.

Primjer:

apt update

Zatim nadogradite kao da radite u svom Ubuntu operativnom sustavu:

apt upgrade 

Kako ukloniti pakete u Docker Containeru

Postupak uklanjanja paketa u vašem Docker spremniku isti je kao i njihovo instaliranje u spremnik. Da biste uklonili paket koji ste prethodno instalirali, u našem primjeru to je bio Nginx, koristite sljedeću naredbu:

apt autoremove nginx

Primjer rezultata:

Tip Y, zatim pritisnite GUMB ENTER da nastavite s deinstalacijom.

Kako izaći iz Docker kontejnera

Da biste izašli iz Docker spremnika, upotrijebite sljedeću naredbu:

exit

Kako navesti Docker kontejnere

Sada kada ste izašli kao gore, vratite se u svoj glavni operativni sustav. Možete koristiti docker ps naredba koji će prikazati aktiviranu Docker naredbu u vašem sustavu:

sudo docker ps

Primjer rezultata:

Alternativna naredba je korištenje dock ps s -zastava, i ovo će navesti sve Docker spremnike koji su i aktivni i neaktivni.

sudo docker ps -a

Primjer rezultata:

Kao što možete vidjeti gore, postoji jedan aktivni spremnik i dva neaktivna.

Još jedna zgodna naredba je docker ps s -l zastava, popis posljednji kreirani spremnik.

sudo docker ps -l

Primjer rezultata:

Zabilježite nazive spremnika; možete ih koristiti umjesto IDS-a spremnika; na primjer, gore je imenovan ID kontejnera 5c9785bbfd75 musing_lehmann.

Kako pokrenuti Docker kontejner

Da biste pokrenuli Docker spremnik, morate nabaviti ID kontejnera koji se, ako se zaboravi, može brzo pronaći pomoću naredbe docker ps. Zatim izvedite sljedeću naredbu kao primjer pokretanja spremnika:

sudo docker start 5c9785bbfd75

Da biste provjerili status i vidjeli je li aktivan, koristite naredbu docker ps:

sudo docker ps

Primjer rezultata:

Kao što vidite, ID spremnika 5c9785bbfd75 je sada aktivan.

Kako zaustaviti Docker kontejner

Zaustavljanje Docker spremnika isto je kao i pokretanje spremnika, ali obrnuto s korištenom opcijom zaustavljanja.

sudo docker stop 5c9785bbfd75

Sada ponovno upotrijebite naredbu docker ps da vidite status:

Primjer rezultata:

Kao gore, možete vidjeti da je ID spremnika 5c9785bbfd75 sada neaktivan.

Kako ukloniti Docker kontejner

Nakon što završite ili više ne trebate spremnik, možete ga ukloniti pomoću naredbe docker rm s ID kontejnera ili naziv kontejnera, Na primjer, uklonite testni spremnik hello-world.

sudo docker rm 7f00ad33be63

Alternativno, možete izbrisati svoj ID spremnika imenom koje je Docker dodijelio. U tutorialu, ID kontejnera 7f00ad33be63 (spremnik hello-world) nazvan je nifty_gagarin. Do uklonite ga, koristite sljedeće:

sudo docker rm nifty_gagarin

Primjer rezultata:

Komentari i zaključak

U tutorialu ste naučili kako instalirati Docker na Ubuntu 20.04, raditi sa slikama i spremnicima. Odavde možete nastaviti učiti o tome kako potisnuti i predati promjene u Docker Hub ako trebate dijeliti ili sigurnosno kopirati slike. Prijava za račun je besplatna, a većina planova je vrlo pristupačna, a poslovni je najviši 21 dolar; ako ste zainteresirani, posjetite stranicu za prijavu i stvorite račun.

Općenito, Docker je vrlo popularan jer je revolucionirao način na koji se razvija ovih dana sa svojom jednostavnošću upotrebe, sigurnošću i zahtjevima za fizičkim resursima koji su manje virtualni stroj kao što se vidi kako je platforma naglo porasla u softverskoj industriji. Sada bjesni rasprava o tome što je sigurnije između virtualnih strojeva i dockera. Međutim, oboje može biti opasno, a dobre prakse mogu zaustaviti većinu sigurnosnih problema s bilo kojom virtualizacijom koju odaberete.

Pretplati me
Obavijesti o
1 Komentar
Umetne povratne informacije
Pogledajte sve komentare

je vous aime !
<3

Posljednji put izmenio coucou prije 18 dana
1
0
Volio bih vaše misli, molim vas komentirajte.x