Установка Docker и Docker-compose на Ubuntu | уроки docker | #1.1
Cuprins:
- Cerințe preliminare
- Instalați Docker pe CentOS
- Executând comanda Docker fără Sudo
- Interfața liniei de comandă Docker
- Imagini Docker
- Containerele de andocare
- Concluzie
Docker este o tehnologie de containerizare care vă permite să construiți, să testați și să implementați rapid aplicații ca containere portabile, autosuficiente, care pot rula practic oriunde.
În acest tutorial, vom parcurge cum să instalați Docker CE pe CentOS 7 și vom explora conceptele și comenzile de bază ale Docker.
Cerințe preliminare
Înainte de a continua acest tutorial, asigurați-vă că sunt îndeplinite următoarele cerințe preliminare:
- Server CentOS 7 Sunteți conectat ca utilizator non-root cu privilegii sudo. Verificați acest ghid despre cum să creați un nou utilizator sudo.
Instalați Docker pe CentOS
Deși pachetul Docker este disponibil în depozitul oficial CentOS 7, este posibil să nu fie întotdeauna cea mai recentă versiune. Abordarea recomandată este instalarea Docker din depozitele Docker.
Pentru a instala Docker pe serverul dvs. CentOS 7, urmați pașii de mai jos:
-
Începeți să actualizați pachetele de sistem și să instalați dependențele necesare:
sudo yum updatesudo yum install yum-utils device-mapper-persistent-data lvm2Apoi, executați următoarea comandă care va adăuga depozitul stabil Docker în sistemul dvs.:
sudo yum-config-manager --add-repoAcum că depozitul Docker este activat, instalați cea mai recentă versiune a Docker CE (Community Edition) folosind yum tastând:
sudo yum install docker-ceDupă instalarea pachetului Docker, porniți demonul Docker și permiteți-l să pornească automat la momentul de pornire:
sudo systemctl start dockersudo systemctl enable dockerPentru a verifica dacă serviciul Docker rulează tipul:
sudo systemctl status dockerProdusul ar trebui să arate așa:
● 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În momentul scrierii, versiunea actuală stabilă a Docker este,
18.06.1, de tipărit tipul versiunii Docker:docker -vDocker version 18.06.1-ce, build e68fc7a
Executând comanda Docker fără Sudo
În mod implicit, Docker necesită privilegii de administrator. Dacă doriți să rulați comenzile Docker ca utilizator non-root fără a preplata
sudo
trebuie să adăugați utilizatorul la grupul de docker care este creat în timpul instalării pachetului Docker CE. Puteți face acest lucru tastând:
sudo usermod -aG docker $USER
$USER
este o variabilă de mediu care vă deține numele de utilizator.
Deconectați-vă și conectați-vă pentru a vă reîmprospăta calitatea de membru.
Pentru a verifica dacă Docker este instalat cu succes și că puteți rula comenzi docker fără sudo, emite următoarea comandă care va descărca o imagine de testare, o va rula într-un container, tipăriți un mesaj „Hello from Docker” și ieșiți:
docker container run hello-world
Produsul ar trebui să arate astfel:
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.
Interfața liniei de comandă Docker
Acum că avem o instalare funcțională Docker, să trecem peste sintaxa de bază a clapetei de docker.
Linia de comandă docker ia următoarea formă:
docker
Puteți lista toate comenzile disponibile tastând
docker
fără parametri:
docker
Imagini Docker
O imagine Docker este formată dintr-o serie de straturi reprezentând instrucțiuni din fișierul Dockerfile al imaginii care alcătuiesc o aplicație software executabilă. O imagine este un fișier binar imuabil care include aplicația și toate celelalte dependențe, cum ar fi binare, biblioteci și instrucțiuni necesare pentru a rula aplicația. Pe scurt, o imagine Docker este în esență o imagine a unui container Docker.
Docker Hub este un serviciu de registru bazat pe cloud care, printre alte funcționalități, este utilizat pentru păstrarea imaginilor Docker, fie într-un depozit public sau privat.
Pentru a căuta o imagine în depozitul Docker Hub, utilizați doar subcomanda de
search
. De exemplu, pentru a căuta imaginea CentOS, executați:
docker search centos
Produsul ar trebui să arate astfel:
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
După cum vedeți rezultatele căutării imprimați un tabel cu cinci coloane,
NAME
,
DESCRIPTION
,
STARS
,
OFFICIAL
și
AUTOMATED
. Imaginea oficială este o imagine pe care Docker o dezvoltă împreună cu partenerii din amonte.
Dacă dorim să descărcăm compilarea oficială a CentOS 7, o putem face folosind subcomanda de
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
În funcție de viteza de pe Internet, descărcarea poate dura câteva secunde sau câteva minute. Odată descărcată imaginea, putem enumera imaginile cu:
docker image ls
Rezultatul ar trebui să semene cu următoarele:
REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest e38bc07ac18e 3 weeks ago 1.85kB centos latest e934aafc2206 4 weeks ago 199MB
Dacă din anumite motive doriți să ștergeți o imagine, puteți face asta cu subcomanda de
image rm
:
docker image rm centos
Untagged: centos:latest Untagged: centos@sha256:989b936d56b1ace20ddf855a301741e52abca38286382cba7f44443210e96d16 Deleted: sha256:e934aafc22064b7322c0250f1e32e5ce93b2d19b356f4537f5864bd102e8531f Deleted: sha256:43e653f84b79ba52711b0f726ff5a7fd1162ae9df4be76ca1de8370b8bbf9bb0
Containerele de andocare
O instanță a unei imagini se numește container. Un container reprezintă un timp de rulare pentru o singură aplicație, proces sau serviciu.
Este posibil să nu fie cea mai potrivită comparație, dar dacă sunteți un programator, vă puteți gândi la o imagine Docker ca clasă și containerul Docker ca o instanță a unei clase.
Putem începe, opri, elimina și gestiona un container cu subcomanda
docker container
docker.
Următoarea comandă va porni un container Docker bazat pe imaginea CentoOS. Dacă nu aveți imaginea local, aceasta o va descărca mai întâi:
docker container run centos
La prima vedere, vi se poate părea că nu s-a întâmplat nimic deloc. Ei bine, nu este adevărat. Containerul CentOS se oprește imediat după pornire, deoarece nu are un proces de lungă durată și nu am furnizat nicio comandă, astfel încât containerul a fost pornit, a executat o comandă goală și apoi a ieșit.
Comutatorul
-it
ne permite să interacționăm cu containerul prin intermediul liniei de comandă. Pentru a porni un tip de container interactiv:
docker container run -it centos /bin/bash
După cum puteți vedea din ieșire odată ce containerul este pornit, promptul de comandă este schimbat, ceea ce înseamnă că acum lucrați din interiorul containerului:
#
Pentru a lista containerele rulante:, tastați:
docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 79ab8e16d567 centos "/bin/bash" 22 minutes ago Up 22 minutes ecstatic_ardinghelli
Dacă nu aveți containere rulante, ieșirea va fi goală.
Pentru a vizualiza ambele containere rulate și oprite, treceți-l pe comutatorul
-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
Pentru a șterge unul sau mai multe containere, trebuie doar să copiați ID-ul containerului (sau ID-urile) de mai sus și să le lipiți după subcomanda
container rm
:
docker container rm c55680af670c
Concluzie
Ați învățat cum să instalați Docker pe mașina dvs. CentOS 7 și cum să descărcați imaginile Docker și să gestionați containerele Docker. De asemenea, poate doriți să citiți despre Docker Compose, care vă permite să definiți și să rulați aplicații Docker cu mai multe containere.
Acest tutorial abia zgârie suprafața ecosistemului Docker. În unele dintre articolele noastre următoare, vom continua să ne scufundăm în alte aspecte ale Docker. Pentru a afla mai multe despre Docker, consultați documentația oficială Docker.
Cum se instalează și se utilizează docker compuse pe Centos 7
Docker Compose este un instrument care vă permite să definiți și să rulați aplicații Docker cu mai multe containere. Cu Compose, definiți serviciile, rețelele și volumele aplicației într-un singur fișier YAML, apoi rotiți aplicația cu o singură comandă.
Cum se instalează și se utilizează docker compune pe debian 10 linux
Docker Compose este un instrument care vă permite să definiți și să orchestrați aplicațiile Docker cu mai multe containere. Acest tutorial explică cum se instalează Docker Compose pe Debian 10, Buster.
Cum se instalează și se utilizează docker compose pe debian 9
Docker Compose este un instrument care vă permite să definiți și să orchestrați aplicațiile Docker cu mai multe containere. Utilizează un fișier YAML pentru a configura containerele, rețelele și volumele aplicației.







