Docker Compose minangka alat sing kuat lan populer sing digunakake kanggo ngatur lan nyebarake aplikasi adhedhasar Docker. Ngidini sampeyan nemtokake, ngatur, lan mbukak macem-macem Docker kontaner minangka proyek siji, nyederhanakake panyebaran aplikasi lan njamin konsistensi antarane lingkungan pangembangan lan produksi.
Ing ngisor iki sawetara konsep lan conto Docker Compose:
Netepake proyek nggunakake file docker-compose.yml
Ing docker-compose.yml
file kasebut, sampeyan bisa nemtokake layanan sing dibutuhake kanggo aplikasi sampeyan. Contone, kanggo masang aplikasi web PHP nganggo basis data MySQL, sampeyan bisa nemtokake rong layanan kaya ing ngisor iki:
version: "3"
services:
web:
image: php:7.4-apache
ports:
- "80:80"
volumes:
- ./app:/var/www/html
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: my_database
Ing potongan kode ing ndhuwur, kita nemtokake rong layanan: web
lan db
. Layanan web
bakal nggunakake PHP 7.4 image karo Apache, ngrungokake ing port 80, lan Gunung ./app
direktori saka inang menyang /var/www/html
direktori ing container. Layanan kasebut db
bakal nggunakake MySQL 5.7 image lan nyetel sawetara variabel lingkungan sing dibutuhake kanggo database.
Nggunakake Docker Compose perintah
Sawise sampeyan nemtokake proyek kasebut ing docker-compose.yml
file kasebut, sampeyan bisa nggunakake Docker Compose perintah kanggo ngatur layanan kasebut.
-
Miwiti proyek:
docker-compose up
Printah iki bakal miwiti wadhah kanggo layanan sing ditetepake ing
docker-compose.yml
file kasebut. -
Mungkasi lan copot wadhah:
docker-compose down
Printah iki mandheg lan mbusak kabeh kontaner sing ana gandhengane karo proyek kasebut.
-
Daftar wadah sing mlaku:
docker-compose ps
Printah iki bakal nampilake status wadhah ing proyek kasebut.
-
Deleng log layanan:
docker-compose logs
Printah iki nuduhake log layanan ing proyek kasebut.
Variabel lingkungan lan kustomisasi
Docker Compose ngidini sampeyan nggunakake variabel lingkungan kanggo ngatur konfigurasi kanggo macem-macem lingkungan, kayata pangembangan lan produksi. Sampeyan bisa nggunakake variabel lingkungan ing docker-compose.yml
file lan nemtokake nilai ing .env
file sing cocog.
Contone, yen sampeyan pengin nemtokake variabel lingkungan kanggo port layanan web
, sampeyan bisa nambah baris menyang .env
file kaya iki:
WEB_PORT=8080
Banjur, ing docker-compose.yml
file kasebut, sampeyan bisa nggunakake variabel lingkungan kaya iki:
version: "3"
services:
web:
image: php:7.4-apache
ports:
- "${WEB_PORT}:80"
volumes:
- ./app:/var/www/html
Nalika nindakake docker-compose up
perintah kasebut, web
layanan kasebut bakal ngrungokake port 8080 tinimbang port 80.
Integrasi karo Docker Swam
Yen sampeyan pengin nyebarake aplikasi ing lingkungan sing disebarake kanthi macem-macem kelenjar, Docker Compose bisa digabungake karo Docker Swarm. Iki ngidini sampeyan ngatur layanan ing sawetara simpul ing Docker kluster.
Kanggo nggunakake integrasi iki, sampeyan mung kudu nambah --orchestrate
utawa --with-registry-auth
opsi nalika mlaku docker stack deploy
utawa docker-compose up
printah ing Swarm lingkungan.
Docker Compose minangka alat sing migunani kanggo pangembangan, pangujian, lan panyebaran aplikasi sing gampang lan efisien. Nyilikake bedane antarane lingkungan pangembangan lan produksi, njamin konsistensi ing proses pangembangan piranti lunak, lan nambah produktivitas tim pangembangan.