Kako pokrenuti više verzija aplikacije s Dockerom

Zadnje ažuriranje: 25/08/2026

  • Korištenje izoliranih kontejnera za upravljanje različitim verzijama istog softvera bez sukoba.
  • Implementacija virtualnih mreža kako bi se omogućila besprijekorna komunikacija između neovisnih usluga.
  • Orkestracija pomoću Docker Composea za pojednostavljenje implementacije višekontejnerskih arhitektura.

Kako pokrenuti više verzija iste aplikacije pomoću Dockera

Kako pokrenuti više verzija iste aplikacije pomoću Dockera? Ponekad naiđemo na problem potrebe za više verzija istog jezika ili aplikacije na istom računalu, i tu Docker postaje naš najbolji prijatelj. Zamislite da morate održavati stariji projekt u PHP-u 5.6 i noviji u PHP-u 8.2; pokušaj instalacije svega toga izravno na host sustav obično završava kaotičnim neredom ovisnosti koji vas drži budnima noću. Ako ste korisnik Windowsa, zapamtite da možete Instalirajte Docker na Windows 10 za početak rada s tim okruženjima.

Čarolija kontejnera leži u činjenici da stvaraju zatvoreno okruženje, omogućujući svakoj verziji da živi u vlastitom balonu bez ometanja ostalih. Umjesto hrvanja sa sistemskim binarnim datotekama ili pokušaja žongliranja simboličkim vezama u Linux /bin direktoriju, najrazumniji pristup je enkapsulirati svaku verziju na zasebnoj slici kako biste osigurali da sve radi od prvog puta.

Programer radi s dva monitora i vidljivim terminalom, idealno za ilustraciju članka o WSL-u i kontejnerima u sustavu Windows 11
Povezani članak:
Kako instalirati WSL kontejnere na Windows 11

Strategija neovisnih kontejnera

Šareni programski kod na monitoru koji ilustrira konfiguraciju Docker Compose aplikacija i datoteka.

Kada govorimo o pokretanju aplikacija s različitim verzijama, ključno je ne pokušavati dopustiti hostu da upravlja binarnim datotekama. Ako pokušate povezati binarnu datoteku iz kontejnera s lokalnim datotečnim sustavom, otkrit ćete da kontejner nije potpuni virtualni stroj, već izolirani proces; stoga, pristup binarnim datotekama Izvana nije pravi pristup. Kako biste bolje upravljali tim procesima, možete naučiti pristup datotekama Docker kontejnera sigurno.

Ekskluzivan sadržaj - Kliknite ovdje  Kako regenerirati bateriju laptopa

Ova metodologija nudi ogromne prednosti. Prvo, možete ažuriraj verziju Izolirano, bez straha od prekida ostatka vaših projekata. Drugo, odvajate odgovornosti: možete imati jedan kontejner samo za logiku aplikacije i drugi posvećen isključivo bazi podataka, što upravljanje resursima čini mnogo učinkovitijim od korištenja tradicionalnog upravitelja procesima.

Povezivanje usluga putem virtualnih mreža

Moderna serverska soba s plavom rasvjetom, koja simbolizira izolirano i zatvoreno okruženje kontejnera.

Prema zadanim postavkama, Docker drži kontejnere na nekoj vrsti "otoka", izoliranog od ostatka. Da bi vaša aplikacija komunicirala sa svojom bazom podataka (na primjer, MySQL instancom), potrebno vam je stvoriti zajedničku mrežuTo se radi pomoću naredbe docker network createTo omogućuje kontejnerima da se međusobno prepoznaju pomoću mrežnih aliasa umjesto stalnog mijenjanja IP adresa.

Lijeni doker
Povezani članak:
Kako upravljati svim Docker kontejnerima iz terminala pomoću LazyDockera

Na primjer, ako pokrenete MySQL kontejner s pseudonimom "mysql", bilo koja druga aplikacija spojena na istu mrežu moći će pronaći bazu podataka jednostavnim pokazivanjem na host pod nazivom mysqlOvo je bitno za konfiguriranje varijabli okruženja kao što su MYSQL_HOST o MYSQL_USERšto omogućuje transparentnost i robusnost veze bez obzira na to gdje se kontejneri izvode.

Ekskluzivan sadržaj - Kliknite ovdje  Kako mogu dobiti Zoom ID?

Pojednostavljenje implementacije uz Docker Compose

Softverski inženjer radi s prijenosnim računalom pored serverskih rackova, predstavljajući upravljanje više verzija softvera.

Ako počnete tipkati naredbe docker run Ako vam se dugačke i složene infrastrukture čine kao noćna mora, Docker Compose je rješenje. U osnovi, to je YAML datoteka u kojoj definirate cijelu svoju infrastrukturu. Umjesto ručnog postavljanja svakog dijela, opisujete usluge i slike koje koriste (kao...). node:lts-alpine o mysql:lts) i portove koje želite otkriti na vaše lokalno računalo.

U ovoj datoteci možete konfigurirati kritične detalje kao što su radni direktorij (working_dir) i volumeni. Korištenje relativni volumeni Omogućuje da se kod u vašoj lokalnoj mapi odražava u stvarnom vremenu unutar kontejnera, što uvelike pojednostavljuje razvoj. Nadalje, Compose automatski upravlja stvaranjem mreže tako da sve usluge definirane u datoteci mogu komunicirati bez potrebe da vi radite išta dodatno.

Kako instalirati Hoarder s Dockerom korak po korak
Povezani članak:
Kako instalirati Hoarder s Dockerom korak po korak

Upravljanje podacima i čišćenje okoliša

Detalj plavih Ethernet kabela spojenih na preklopnik, koji ilustrira stvaranje virtualnih mreža za povezivanje servisa u Dockeru.

Jedno područje gdje se mnogi ljudi zbune je perzistencija podataka. Ako izbrišete spremnik, interni podaci nestaju. Kako bi se to spriječilo, koristi se perzistencija podataka. imenovani svesci, koji pohranjuju informacije (poput MySQL tablica) u prostoru kojim upravlja Docker, a koji preživi ponovno pokretanje ili brisanje kontejnera.

Ekskluzivan sadržaj - Kliknite ovdje  Kako promijeniti pozadinu u Photoshopu CS6

Kada završite s radom ili želite početi ispočetka, možete koristiti docker-compose downAko želite izbrisati i pohranjene podatke kako biste sustav ostavili čistim, morat ćete dodati zastavicu –volumeniNa ovaj način uklanjate kontejnere, mreže i trajne podatke, ostavljajući svoje okruženje spremnim za novu konfiguraciju bez ostataka.

Implementacija arhitektura temeljenih na kontejnerima omogućuje upravljanje više verzija softvera uklanjanjem kolizija ovisnosti i olakšavanjem komunikacije između servisa putem virtualnih mreža i automatizacije Docker Composea, osiguravajući da je svako okruženje reproducibilno i jednostavno za održavanje.

Dify se neće pokrenuti s Dockerom
Povezani članak:
Dify se ne pokreće s Dockerom: greške i rješenja