Kako namestiti Docker Compose v sistemu Ubuntu
Docker Compose je še posebej primeren za razvojna in testna okolja, pa tudi za manjše produkcijske namestitve. Razložimo vam, kako lahko z Composeom enostavno usklajujete aplikacije Docker na Ubuntu.
Kakšne so zahteve za Docker Compose v sistemu Ubuntu?
Preden lahko začnete uporabljati Docker Compose, morate preveriti, ali vaš sistem izpolnjuje naslednje pogoje:
- Docker Engine: Compose je razširitev za Docker Engine, ki jo morate namestiti.
- Operacijski sistem: Ubuntu, uporabnik sudo s privilegiji root.
Če želite uporabljati drug operacijski sistem kot Linux, si oglejte naš vodnik o namestitvi Docker Compose v sistemu Windows in Docker Compose v sistemu macOS.
Podroben vodnik za namestitev Docker Compose v sistemu Ubuntu
Če želite uporabljati Docker Compose v sistemu Ubuntu, morate najprej namestiti Docker Engine in preveriti, ali deluje pravilno. Ko Docker deluje, prenesite Compose in ustvarite datoteko YAML za konfiguracijo svojih aplikacij.
Korak 1: Prenesite in namestite Docker Compose
Najnovejšo različico Docker Compose prenesite iz uradnega repozitorija GitHub tako, da v terminalu vnesete naslednji ukaz:
$ curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-composeshellSedaj lahko dodelite pravice za izvajanje Docker Compose:
$ sudo chmod +x /usr/local/bin/docker-composeshellUporabite možnost --version, da preverite, ali je bil program Compose uspešno nameščen.
$ docker-compose --versionshellPrikazal se bo naslednji izpis:

Če namestitev ni uspela, preverite pot.
Prav tako lahko ustvarite simbolično povezavo do poti /usr/bin:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-composeshellKorak 2: Nastavite datoteko docker-compose.yml
Da bi prikazali, kako je sestavljena datoteka YAML za Docker Compose, za okolje kontejnerja uporabljamo sliko Nginx iz uradnega Docker Hub-a.
Najprej ustvarite novo mapo v svojem domovskem imeniku:
$ mkdir ~/compose-testshellPreklopite v ta imenik in ustvarite novo mapo za korenski imenik vašega okolja Nginx.
$ cd ~/compose-test
$ mkdir appshellZa ustvarjanje datoteke index.html lahko uporabite kateri koli urejevalnik besedil, na primer nano.
$ nano app/index.htmlshellTukaj je HTML-koda za vzorčno stran:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Docker Compose Test</title>
</head>
<body>
<h1>This is a Docker Compose Test Page for an Nginx container.</h1>
</body>
</html>htmlShranite in zaprite datoteko HTML ter ustvarite datoteko docker-compose.yml.
$ nano docker-compose.ymlshellVsebina je razdeljena na številko različice konfiguracije in blok storitev.
version: '3.9'
services:
web:
image: nginx:alpine
ports:
- "8000:80"
volumes:
- ./app:/usr/share/nginx/htmlYAMLV sklopu storitev je ena sama storitev z imenom »web«. Ta je povezana z določeno sliko Nginx in preusmeritvijo vrat. V naši konfiguraciji se vsa zahtevka, poslana na vrata 8000 na gostiteljskem računalniku, preusmerijo v spletni kontejner na vratih 80, kjer teče Nginx. Poleg tega uporabljamo skupni volumen med gostiteljem in kontejnerjem. S tem je lokalna mapa »app« dostopna aplikaciji Nginx
Korak 3: Izvedba Docker Compose
Z naslednjim ukazom ustvarimo spletni kontejner in zagnamo okolje kontejnerja v ozadju:
$ docker-compose up -dshellČe slika, navedena v datoteki YAML, ni prisotna v lokalnem sistemu, se bo samodejno prenesla.
Če želite preveriti, ali okolje Nginx deluje, vnesite ukaz ps.
$ docker-compose psshellVzorec strani, ki ste ga ustvarili prej, je zdaj dostopen na naslovu localhost:8000, ko na svojem računalniku zaženete predstavitev. Če uporabljate oddaljeni strežnik, namesto »localhost« preprosto vnesite IP-naslov svojega strežnika.

Aplikacijo v kontejnerju lahko ustavite s pomočjo stop.
$ docker-compose stopshell