Ukuphathwa kwesitsha kuyingxenye ebalulekile yokuthuthukiswa kwesicelo sesimanje kanye nokuthunyelwa. Nge-ecosystem yesofthiwe esabalaliswa ngokwandayo, enamathuluzi asebenzayo afana I-Docker Ukubhala kwenza kube lula ukuphatha iziqukathi eziningi ngendlela elula nehlelekile.
Kulesi sihloko, sizophenya kukho konke odinga ukukwazi mayelana nethuluzi, kusukela ekufakweni nasekusetshenzisweni kwalo okuyisisekelo kuya ekucushweni okuthuthukile, amanethiwekhi, amavolumu, nokukalwa kwesevisi. Uma ubheke ukuthuthukisa ukusetshenziswa kohlelo lwakho lweziqukathi eziningi, uzothola yonke imininingwane enemininingwane yesinyathelo nesinyathelo lapha.
Iyini i-Docker Compose?
I-Docker Ukubhala Kuyithuluzi elikuvumela ukuthi uchaze, ulungise futhi uphathe izinhlelo zokusebenza ezakhiwe ngeziqukathi eziningi njengeyunithi eyodwa. Usebenzisa ifayela lokumisa le-YAML, ungachaza izinsiza ezakha uhlelo lwakho lokusebenza futhi uzilawule ngemiyalo elula.
Phakathi kwezinzuzo eziyinhloko ezinikezwa ithuluzi yikhono lokwenza lula ukushaywa kweziqukathi, ukuphathwa okuguquguqukayo kwemvelo, ukudalwa kwenethiwekhi yangokwezifiso, nokukalwa kwesevisi ngaphandle kwesidingo sokucushwa okuyinkimbinkimbi kwezandla. Ukuze uthole ulwazi olwengeziwe mayelana namathuluzi afanayo, ungavakashela isihloko esithi vula amafayela e-CBR.
Ifaka i-Docker Compose
Kuye ngesistimu yokusebenza, ukufakwa kwe I-Docker Ukubhala ingahluka kancane:
- IWindows ne-macOS: ifakwa ngokuzenzakalelayo nge Ideskithophu yeDocker, ngakho-ke akukho ukufakwa okwengeziwe okudingekayo.
- Linux: Kumelwe ilandwe mathupha ngokusebenzisa umyalo olandelayo:
sudo curl -L "https://github.com/docker/compose/releases/download/v2.0.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Ngemva kokulanda, izimvume zisetshenziswa nge:
sudo chmod +x /usr/local/bin/docker-compose
Ukuze uqinisekise ukufakwa, vele uqalise:
docker-compose --version
Idala ifayela le-docker-compose.yml
Ifayela docker-compose.yml
iwumgogodla wokucushwa. Ichaza izinsizakalo nezici zazo. Isibonelo esiyisisekelo sokumisa singaba:
version: '3.8'
services:
web:
image: nginx:latest
ports:
- "80:80"
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: example
Kulesi sibonelo, kuchazwa izinsizakalo ezimbili:
- web: Isevisi esebenzisa isithombe se-Nginx esisemthethweni futhi edalula ichweba 80.
- db: Isevisi ye-MySQL enokuguquguquka kwendawo ukuze kuchazwe igama-mfihlo lomsebenzisi izimpande.
I-Basic Docker Compose Commands
Uma ifayela le-YAML selilungisiwe, I-Docker Ukubhala ikuvumela ukuthi uphathe uhlelo lokusebenza ngemiyalo elula:
docker-compose up
: Iqala futhi isebenzise zonke izinsiza ezichazwe kuyodocker-compose.yml
.docker-compose down
: Ima futhi isuse zonke iziqukathi ezithintekayo.docker-compose ps
: Iklelisa izinsiza ezisebenzayo.docker-compose logs
: Ibonisa izingodo ezikhiqizwe isiqukathi ngasinye.
Ukuze uqalise amasevisi ngemuva, ifulegi liyengezwa -d
:
docker-compose up -d
Ukusetshenziswa okuthuthukile kwe-Docker Compose
Amanethiwekhi namavolumu
Ngaleli thuluzi, ungachaza amanethiwekhi ngokwezifiso namavolumu ukuze uthuthukise ukuxhumana kwesiqukathi nokuphikelela kwedatha. Isibonelo esinamavolumu kungaba:
version: '3.8'
services:
web:
image: nginx:latest
volumes:
- web_data:/var/www/html
db:
image: mysql:8.0
volumes:
- db_data:/var/lib/mysql
volumes:
web_data:
db_data:
Ngalokhu kumisa, zombili lezi zinsizakalo zine isitoreji esiphikelelayo, okubalulekile ukuqinisekisa ukuthi idatha ayilahleki lapho uqalisa kabusha iziqukathi. Ukwengeza, ukusetshenziswa kwamavolumu kubalulekile ekuphatheni kahle iziqukathi eziningi.
Ukukala kwesevisi
Uma udinga ukukhuphula inombolo yezenzakalo zesevisi, ungakwazi ukukala kalula ngalezi:
docker-compose up -d --scale web=3
Lokhu kuzodala izehlakalo ezintathu yenkonzo web
, iwusizo ezinhlelweni ezidingayo ukulinganisa umthwalo. Lo mshini ufana kakhulu nalokho ongase usetshenziswe kwezinye izindawo zokuthuthukiswa, njengoba kushiwo lapho kuqhathaniswa namakhamera kugajethi.
I-Docker Compose iyithuluzi elinamandla elenza lula ukuphathwa kwezinhlelo zokusebenza ezineziqukathi eziningi, likuvumela ukuthi uchaze kahle, ulungiselele, futhi ukale izinsiza. Ukusebenziseka kwayo kalula nokuhambisana nentuthuko kanye nezindawo zokukhiqiza kuyenza ibe yinto okumele uyikhethe kubathuthukisi nabaphathi besistimu. Yabelana ngalolu lwazi futhi usize abanye abasebenzisi bafunde ngenkundla..