Junior
Šta je Docker Compose?
sobes.tech АИ
Одговор од АИ
Alatka za definisanje i pokretanje multi-kontejnerskih Docker aplikacija. Omogućava opisivanje servisa, mreža i volumena u jednom YAML fajlu i njihovo pokretanje jednom komandom.
Glavne funkcije:
- Definisanje više servisa u jednom fajlu.
- Kreiranje i pokretanje svih servisa jednom komandom.
- Upravljanje životnim ciklusom aplikacije (pokretanje, zaustavljanje, ponovo pokretanje, skaliranje).
- Mrežna interakcija između kontejnera.
- Primena konfiguracije u realnom vremenu.
Primer fajla docker-compose.yml:
version: '3.8' # Verzija formata fajla
services:
web: # Ime servisa
image: nginx:latest # Koristi se slika
ports:
- "80:80" # Preusmeravanje portova
volumes:
- ./html:/usr/share/nginx/html # Mapiranje volumena
app: # Ime drugog servisa
build: . # Izgradnja slike iz Dockerfile u trenutnom direktorijumu
ports:
- "5000:5000"
depends_on: # Zavisnost od drugog servisa
- db
db: # Ime servisa baze podataka
image: postgres:latest
environment: # Promenljive okruženja
POSTGRES_DB: mydatabase
POSTGRES_USER: myuser
POSTGRES_PASSWORD: mypassword
volumes: # Definisani volumeni
data: # Imenovani volumen za podatke
Komande:
docker-compose up: Pokreće kontejnere.docker-compose down: Zaustavlja i briše kontejnere.docker-compose build: Gradi slike.docker-compose ps: Prikazuje status pokrenutih kontejnera.
Prednosti:
- Olakšava upravljanje složenim multi-kontejnerskim aplikacijama.
- Osigurava ponovljivost implementacije.
- Olakšava lokalni razvoj i testiranje.