Instalare Engine Docker

Necesar Sistem Operare

Sistemul de operare instalat pe serverul de aplicatie trebuie sa fie unul din urmatoarele:

  • Oracle Linux minim versiunea 7 (recomandat, licentiere gratuita)

  • Cent OS Linux minim versiunea 7 (licentiere gratuita)

  • Red Hat Linux minim versiunea 7

Linux

De la consola serverului sau folosind orice utilitar pentru conectare secure shell: putty (incepand cu versiunea 0.75), kitty (incepand cu versiunea 0.75), inclusiv Windows terminal - se executa comenzile :

Pentru a verifica versiunea sistemului de operare pe care se face instalarea se foloseste comanda:

hostnamectl

In raspunsul comenzii pe linia Operating System se gaseste informatia cautata.

Pentru instalare versiune Docker Engine CE - Latest Stable (CentOS / RedHat / Oracle Linux versiunea 7)

yum install dos2unix curl wget -y
curl -H 'Cache-Control: no-cache' http://static.emsys.ro/docker/install_docker_ce_linux_7.sh | dos2unix | sh

Pentru instalare versiune Docker Engine CE - Latest Stable (Alma Linux / RedHat / Oracle Linux / Rocky Linux versiunea 8 sau 9)

yum install dos2unix curl wget -y
curl -H 'Cache-Control: no-cache' http://static.emsys.ro/docker/install_docker_ce_linux_8_9.sh  | dos2unix | sh

Dupa instalare, pentru a verifica functionarea serviciului docker se ruleaza comanda:

docker version

Exemplu de rezultat fara erori:

  Client:
Version:           18.06.0-ce
API version:       1.38
Go version:        go1.10.3
Git commit:        0ffa825
Built:             Wed Jul 18 19:08:18 2018
OS/Arch:           linux/amd64
Experimental:      false

Server:
Engine:
 Version:          18.06.0-ce
 API version:      1.38 (minimum version 1.12)
 Go version:       go1.10.3
 Git commit:       0ffa825
 Built:            Wed Jul 18 19:10:42 2018
 OS/Arch:          linux/amd64
 Experimental:     false

Exemplu de rezultat cu erori:

docker: command not found

Windows

(doar pentru dezvoltatori)
Docker poate rula doar pe Windows Server 2016/2019 (GUI) sau Windows 10 Pro.
Se verifica daca la nivel hardware sistemul suporta virtualizare:
Se ruleaza comanda:
msinfo32
Se verifica linia «Hiper-V Virtualization Enabled in Firmware» sa aiba valoarea Yes
In caz contrar se activeaza in BIOS toate optiunile de virtualizare.
Se instaleaza toate update-urile pentru sistemul de operare.
Se restarteaza sistemul.
Se descarca Docker versiunea pentru Windows de la adresa: https://hub.docker.com/editions/community/docker-ce-desktop-windows
Pentru a descarca kitul de instalare este necesara inregistrarea pe site.
Se ruleaza kit-ul de instalare cu optiunile default, NU se bifeaza „Use Windows containers instead of Linux containers”
Din taskbar se selecteaza Docker > click dreapta, Settings.
Se selecteaza Shared Drives. Se bifeaza partitia C > Apply.
Se selecteaza Advanced. Se mareste CPU la maxim, Memoria la 75% din maxim, Swap 4096M , se apasa Apply
Se restarteaza sistemul
Se verifica functionarea serviciului docker prin rularea comenzii
docker version
Exemplu output:
 Client: Docker Engine - Community
Version:           18.09.2
API version:       1.39
Go version:        go1.10.8
Git commit:        6247962
Built:             Sun Feb 10 04:12:31 2019
OS/Arch:           windows/amd64
Experimental:      false

Server: Docker Engine - Community
Engine:
 Version:          18.09.2
 API version:      1.39 (minimum version 1.12)
 Go version:       go1.10.6
 Git commit:       6247962
 Built:            Sun Feb 10 04:13:06 2019
 OS/Arch:          linux/amd64
 Experimental:     false

Notă

Dupa restartul sistemului de operare, pentru pornirea serviciului docker trebuie facut log on.

Serviciul porneste automat dupa log on.

Configurare Proxy Server

Daca in reteaua locala exista un proxy server prin care se face iesirea catre internet, sunt necesare configurari suplimentare pentru ca descarcarea kitului de instalare, respectiv descarcarea imaginilor Docker, sa functioneze corect.

Linux

Inainte de rularea scripturilor de instalare (curl / wget / yum) se seteaza variabilele de mediu pentru proxy:

export http_proxy="http://utilizator:parola@adresa_proxy:port"
export https_proxy="http://utilizator:parola@adresa_proxy:port"
export no_proxy="localhost,127.0.0.1"

Notă

Daca proxy-ul nu necesita autentificare, se omit utilizator:parola@ din adresa.

Pentru ca yum sa foloseasca proxy-ul si dupa inchiderea sesiunii curente, se editeaza fisierul /etc/yum.conf si se adauga linia:

proxy=http://adresa_proxy:port

Dupa instalarea Docker Engine, serviciul docker (dockerd) foloseste propriile setari de proxy pentru descarcarea imaginilor (docker pull), independente de variabilele de mediu ale sesiunii shell. Se configureaza astfel:

mkdir -p /etc/systemd/system/docker.service.d

Se creeaza fisierul /etc/systemd/system/docker.service.d/http-proxy.conf cu urmatorul continut:

[Service]
Environment="HTTP_PROXY=http://adresa_proxy:port"
Environment="HTTPS_PROXY=http://adresa_proxy:port"
Environment="NO_PROXY=localhost,127.0.0.1"

Se reincarca configuratia si se restarteaza serviciul docker:

systemctl daemon-reload
systemctl restart docker

Se verifica ca proxy-ul a fost preluat de serviciul docker:

systemctl show --property=Environment docker

Windows

Docker Desktop poate prelua automat setarile de proxy configurate la nivel de sistem de operare (Windows) sau pot fi configurate manual.
Din taskbar se selecteaza Docker > click dreapta, Settings > Resources > Proxies.
Se dezactiveaza optiunea Manual proxy configuration doar daca se doreste preluarea automata a setarilor din Windows, altfel se completeaza manual campurile Web Server (HTTP) si Secure Web Server (HTTPS) cu adresa proxy-ului, in formatul:
http://adresa_proxy:port
Se apasa Apply & Restart.

Notă

Daca proxy-ul necesita autentificare, adresa se introduce in formatul http://utilizator:parola@adresa_proxy:port.