Docker-kon­tej­ner­je MongoDB je enostavno raz­mno­že­va­ti in pri­la­ga­ja­ti obsegu. Če se obre­me­ni­tev baze podatkov poveča, lahko zaženete dodatne kon­tej­ner­je MongoDB. S tem za­go­to­vi­te stabilno delovanje baze podatkov.

Ali MongoDB deluje v Doc­ker­je­vem kon­tej­ner­ju?

MongoDB lahko učin­ko­vi­to deluje v Doc­ker­je­vem kon­tej­ner­ju. Na Docker Hubu sta na voljo dve vrsti slik MongoDB: Community Edition in En­ter­pri­se Edition. Izbira med tema dvema raz­li­či­ca­ma je odvisna od vaših kon­kre­tnih potreb. Community Edition je običajno idealna za ne­ko­mer­ci­al­no rabo ali manjše na­me­sti­tve. En­ter­pri­se Edition pa vključuje dodatne funkcije in podporo za večje apli­ka­ci­je ali podjetja z na­pre­dnej­ši­mi potrebami, kot so ši­fri­ra­nje, revizija in in­te­gra­ci­ja LDAP.

Če vnaprej pri­pra­vlje­ne slike MongoDB na Docker Hubu ne ustrezajo v celoti vašim potrebam, vam Docker omogoča, da s pomočjo datoteke Doc­ker­fi­le ustvarite lastno sliko Dockerja. S pomočjo datoteke Doc­ker­fi­le lahko izberete različico MongoDB, nastavite določene možnosti (kot so metode av­ten­ti­fi­ka­ci­je) ter namestite dodatna orodja ali gonilnike, potrebne za vaše okolje.

Kako korak za korakom upo­ra­blja­ti MongoDB v Doc­ker­je­vem kon­tej­ner­ju

Docker je znan po svoji lahki vir­tu­a­li­za­ci­ji, ki omogoča pre­no­slji­vost in do­sle­dnost v različnih razvojnih in pro­duk­cij­skih okoljih. V na­da­lje­va­nju vam bomo korak za korakom pokazali, kako v Dockerju nastaviti kon­tej­ner­je MongoDB. Za­če­tni­kom pri­po­ro­ča­mo, da si ogledajo naš vodič po Dockerju: Na­me­sti­tev in prvi koraki, ki ponuja podrobno uvodno pred­sta­vi­tev te kon­tej­ner­ske platforme.

Korak 1: Prenesite sliko MongoDB za Docker

Da bi ustvarili Docker-kontejner za MongoDB, moramo najprej pridobiti ustrezno sliko za zagon iz Docker Hub. Odprite terminal ali ukazno vrstico in izvedite naslednji ukaz:

docker pull mongo:latest
bash

Če slika že obstaja v lokalnem omrežju, Docker ne bo prenesel nove različice, razen če izrecno ne navedete različice, ki jo želite uporabiti (na primer mongo:4.4).

Korak 2: Zaženi Docker-kontejner MongoDB

Ko je slika Dockerja za MongoDB uspešno prenesena, lahko zaženete kontejner, ki temelji na tej sliki:

  • docker run: Zažene nov Docker-kontejner
  • --name mongodb-container: Kontejner poimenuje »mongodb-container«
  • -d: Ta parameter uporabite za zagon kon­tej­ner­ja v ozadju (v ločenem načinu). To pomeni, da lahko terminal še vedno upo­ra­blja­te, medtem ko kontejner teče
  • -p 27017:27017: Odpre stan­dar­dno vrata MongoDB 27017 kon­tej­ner­ja na vašem go­sti­telj­skem sistemu
  • mongo:latest: Zagotovi navodila za pri­do­bi­tev naj­no­vej­še raz­po­lo­žlji­ve slike

Korak 3: Preverite, ali kontejner deluje

Da bi se pre­pri­ča­li, da je bil kontejner uspešno zagnan, vnesite naslednji ukaz:

docker ps
bash

Te in­for­ma­ci­je ponujajo hiter pregled aktivnih Doc­ker­je­vih kon­tej­ner­jev MongoDB v vašem sistemu, vključno s podatki o tem, kako dolgo že tečejo in katere vrata upo­ra­blja­jo. Za po­drob­nej­še in­for­ma­ci­je, kot so usta­vlje­ni kon­tej­ner­ji ali posebne možnosti fil­tri­ra­nja, pri­po­ro­ča­mo uporabo ukaza docker ps -a.

Korak 4: Vzpo­sta­vi­te povezavo z MongoDB v Doc­ker­je­vem kon­tej­ner­ju

Sedaj lahko vzpo­sta­vi­te povezavo s primerkom MongoDB v svojem Doc­ker­je­vem kon­tej­ner­ju. Za to zagnajte MongoDB Shell ne­po­sre­dno v kon­tej­ner­ju:

  • docker exec: Izvede ukaz v zagnanem kon­tej­ner­ju
  • -it: Omogoča in­te­rak­ci­jo s ter­mi­na­lom v kon­tej­ner­ju
  • mongodb-container: Ime na­sta­vlje­ne­ga kon­tej­ner­ja MongoDB
  • mongo: Zažene lupino MongoDB

Ko izvedete ta ukaz, se bo prikazal MongoDB-ov ukazni vmesnik, pri­pra­vljen za sprejem ukazov. Zdaj lahko vnašate običajne ukaze MongoDB za upra­vlja­nje ali po­i­zve­do­va­nje v bazi podatkov.

Korak 5: Izvedite ukaze v lupini MongoDB

Sedaj lahko na naslednji način prikažete vse obstoječe baze podatkov na strežniku MongoDB:

show databases
bash

Izpis vsebuje imena baz podatkov:

admin   0.000GB
local      0.000GB
test       0.000GB
bash

Če želite v lupini MongoDB delati z določeno bazo podatkov, uporabite naslednji ukaz:

use mydatabase
bash

Uporabite naslednji ukaz, da pre­klo­pi­te na bazo podatkov z imenom »myda­ta­ba­se«. Če baza podatkov ne obstaja, se bo ustvarila samodejno ob vsta­vlja­nju dokumenta.

Dokumente lahko poiščete tudi v določeni zbirki:

db.users.find()
bash

Okolje MongoDB vrne vse dokumente, ki so shranjeni v zbirki »users«.

{ "_id": ObjectId("609823e9f9a5f7f364fc3f90"), "username": "alice", "age": 28 }
{ "_id": ObjectId("609823f2f9a5f7f364fc3f91"), "username": "bob", "age": 32 }
{ "_id": ObjectId("609823f9f9a5f7f364fc3f92"), "username": "charlie", "age": 25 }
bson

Vsak dokument vsebuje edin­stve­no polje _id (iden­ti­fi­ka­tor, značilen za MongoDB) ter druga polja, kot sta username in age.

Več in­for­ma­cij o orodjih Docker in pred­sta­vi­tvi MongoDB, vključno s pri­mer­ja­vo z MySQL, najdete v našem vodniku.

Go to Main Menu