Docker — izolirani kontejneri za stabilne web-stranice
Cijela platforma 4buildsite — editor, API, mehanizam za renderovanje i servis koji isporučuje objavljene stranice — radi u Docker kontejnerima: izoliranim paketima koji sadrže sve što je svakom servisu potrebno. Vaša stranica se renderuje statički i isporučuje kao kompletna verzija, koja se pri svakoj objavi mijenja atomski. Jednostavno rečeno: ako nešto pođe po zlu, ste na prethodnoj verziji.
Šta je kontejner — i zašto je bitan za vašu stranicu
Kontejner je standardizovan paket koji sadrži aplikaciju i apsolutno sve što joj treba za rad: runtime, biblioteke, konfiguraciju. Kontejner radi izolirano od ostatka servera, ali direktno koristi Linux kernel domaćina — bez zasebnog operativnog sistema po aplikaciji. Docker, pokrenut 2013., pretvorio je ovu tehnologiju u pristupačan standard; format slike danas je standardizovan kao OCI (Open Container Initiative) i radi identično na bilo kojem Linux serveru ili cloudu.
Klasična analogija je transportni kontejner: bez obzira na teret, ima isti standardni oblik i može se prebaciti na bilo koji brod, voz ili kamion. Tako su i servisi 4buildsite koji grade i isporučuju vašu stranicu — editor, FastAPI API, mehanizam za renderovanje — upakovani u standardne slike koje rade isto na testnom serveru i u produkciji. Vama, kao vlasniku stranice ili trgovine, to znači predvidljivost: ono što ste vidjeli u pregledu tačno je ono što dobijaju vaši posjetioci.
- Kontejner = aplikacija + njene zavisnosti, u jednom izoliranom paketu
- Standardni OCI format — ista slika radi na bilo kojem serveru ili cloudu
- Bez zasebnog operativnog sistema po servisu — pokreće se za sekunde, ne minute
- Na 4buildsite kontejnerizaciju rješava platforma — vi samo objavljujete
Izolacija: vaša stranica ne zavisi od susjeda
Na klasičnom dijeljenom hostingu stotine stranica dijele isti server, iste procese i često istu PHP instalaciju. Ako susjed ima nalet saobraćaja ili loše napisana skripta pojede sav CPU, vaša stranica se usporava — problem „bučnog susjeda“. 4buildsite to rješava iz dva smjera. Prvo: objavljene stranice se renderuju statički — na serverima koji ih isporučuju ne radi nikakav kod po stranici (PHP, dodaci, skripte), pa nema tuđe loše napisane skripte koja bi pojela CPU. Drugo: servisi platforme rade svaki u vlastitom kontejneru, s odvojenim procesima i datotekama (putem namespaces) i mogućnošću ograničenja CPU-a i memorije (putem cgroups, mehanizama Linux kernela).
Izolacija je jednako važna za sigurnost. Na dijeljenom hostingu jedna kompromitovana stranica može postati ulaz u susjedne stranice na istom serveru. Na 4buildsite, objavljena stranica je skup statičkih datoteka — nema koda po stranici koji bi se mogao kompromitovati putem dodataka ili tema — a servisi platforme koji obrađuju podatke (narudžbe, plaćanja, editor) žive u odvojenim kontejnerima: datotečni sistem je izoliran, a incident ostaje zatvoren unutar tog kontejnera.
- Objavljena stranica = statičke datoteke — nula koda po stranici koji bi se mogao kompromitovati
- Servisi platforme: odvojen datotečni sistem i procesi po kontejneru
- Statička isporuka datoteka, bez koda po stranici
Ista verzija svuda: nula „radi na mojoj mašini“
Najčešći izvor grešaka na klasičnom webu je razlika između okruženja u kojem je stranica testirana i servera na kojem radi uživo: drukčija verzija jezika, ekstenzija koja nedostaje, drukčija konfiguracija. Docker slika eliminira cijelu tu klasu problema: slika se gradi jednom, sa svim fiksiranim zavisnostima, a tačno isti artefakt radi u testiranju i u produkciji. Nema „ručno podešeno na serveru“.
Za vas se to direktno prevodi u stabilnost. Kad uredite stranicu u vizuelnom editoru na panel.4buildsite.net i kliknete objavi, verzija koja stiže do posjetilaca prošla je iste korake, kroz iste kontejnerizovane servise, svaki put. Manje iznenađenja nakon objave znači manje noći s ugašenom trgovinom — a za online trgovinu svaki sat bez rada znači izgubljene narudžbe.
Objave i povratak na prethodnu verziju
Na 4buildsite objava ne znači „ugasi stranicu, kopiraj datoteke, nadaj se“. Svaka objava generiše novu, kompletnu verziju vaše stranice — statički renderovanu, odvojenu od one koja je uživo — a prelazak na nju je atomski: u jednoj operaciji servis isporuke počinje služiti novu verziju. Isti princip važi za servise platforme: nova verzija kontejnera pokreće se uz staru i preuzima saobraćaj tek nakon provjera ispravnosti (health checks).
Jednako je važan put nazad. Svaka objavljena verzija stranice čuva se netaknuta, pa povratak na prethodnu verziju znači samo prebacivanje nazad, a ne višesatno vraćanje iz sigurnosne kopije. Ako objava uvede problem, vaša trgovina ne ostaje zaglavljena na pokvarenoj verziji. Jedna poštena napomena: podaci (narudžbe, proizvodi, sadržaj) žive u bazi podataka, odvojeno od objavljenih verzija — zato se njima upravlja na trajnim volumenima, odvojenim od datoteka stranice.
- Svaka objava = nova, kompletna verzija, mijenja se atomski
- Povratak = prebacivanje na prethodnu verziju
- Objavljujte izmjene bilo kada, čak i u sezoni vrhunca prodaje
Efikasnost i trošak: više performansi za isti novac
Klasična virtuelna mašina pokreće kompletan operativni sistem za svaku aplikaciju — gigabajte memorije i minute pokretanja potrošene samo na „pakovanje“. Kontejneri dijele kernel domaćina, pa na isti server stane znatno više stranica, svaka s vlastitom izolacijom. Ta gustoća je razlog zašto 4buildsite može uključiti hosting i SSL u pretplatu, bez zasebnog troška infrastrukture po stranici.
Za vašu objavljenu stranicu skaliranje saobraćaja je još jednostavnije: budući da su to statičke datoteke, njihovo posluživanje je izuzetno jeftino — nalet posjetilaca znači više isporučenih datoteka, a ne dodatne procese koji se međusobno ometaju. A servisi platforme, kao kontejneri koji se pokreću za sekunde, po potrebi mogu dobiti dodatne instance. Plaćate predvidljivu pretplatu, a ne infrastrukturu trajno dimenzioniranu za najprometniji dan u godini. Kako zaista upravljamo ovim kontejnerima — orkestracija, proxy, CI/CD, monitoring — pogledajte stranicu Cloud i DevOps.
Prednosti i nedostaci
Prednosti
- Objavljena stranica se služi statički, a platforma radi u izoliranim kontejnerima — zaposlen ili kompromitovan susjed ne može na nju uticati.
- Iste slike platforme u testiranju i produkciji — nula „radi na mojoj mašini“.
- Objave: nova verzija stranice generiše se odvojeno i mijenja atomski.
- Povratak na prethodno objavljenu verziju ako izmjena pođe po zlu.
- Kontejneri se pokreću za sekunde — servisi platforme se skaliraju pri naletima saobraćaja.
- Velika gustoća po serveru — hosting uključen u pretplatu, bez zasebnog troška.
Ograničenja
- Izolacija koristi zajednički kernel domaćina — slabija od hardverske izolacije namjenske virtuelne mašine.
- Kontejner je prolazan: trajni podaci (baza, otpremljene datoteke) traže zasebno upravljane volumene i sigurnosne kopije.
- Slike i njihovi slojevi troše prostor na disku — bez periodičnog čišćenja se gomilaju.
- Za timove koji ga sami vode, Docker ima stvarnu krivulju učenja — na 4buildsite njime u potpunosti upravlja platforma.
Brzi zaključak
Docker kontejnerizacija je de facto standard industrije za pokretanje web aplikacija: izolacija, konzistentnost testiranja i produkcije te trenutni povratak. Na 4buildsite platforma koja gradi i isporučuje vašu stranicu radi kontejnerizovano, a objave vaše stranice su verzionisane, mijenjaju se atomski i mogu se poništiti — kako se infrastrukturom upravlja (orkestracija, proxy, CI/CD) opisano je na stranici Cloud i DevOps.
Tabela specifikacija
| Mogućnost | Granica / prag | Tipična upotreba | |
|---|---|---|---|
| Izolacija resursa | Ograničenja CPU/RAM po kontejneru (cgroups, namespaces) | Zajednički kernel — nije hardverska izolacija kao kod VM-a | Stranice i trgovine na dijeljenoj infrastrukturi |
| Pokretanje / isporuka | Kontejner se pokreće za nekoliko sekundi | Prvo preuzimanje slike traje duže | Česte objave i ažuriranja, bez prekida |
| Povratak (rollback) | Povratak na bilo koju prethodnu sliku za nekoliko sekundi | Podaci iz baze se ne vraćaju zajedno sa slikom | Trenutni oporavak kad ažuriranje pođe po zlu |
| Prenosivost | OCI slika — radi na bilo kojem Linux hostu ili cloudu | Slike su po arhitekturi (x86/ARM) | Prelazak između servera bez prepisivanja aplikacije |
| Gustoća / trošak | Desetine izoliranih kontejnera na jednom serveru | Svi dijele kernel i disk domaćina | Nizak trošak po stranici — hosting uključen u pretplatu |
Docker naspram virtuelnih mašina naspram dijeljenog hostinga (cPanel)
| Kriterij | Docker (kontejneri) | Virtuelne mašine | Dijeljeni hosting (cPanel) |
|---|---|---|---|
| Izolacija | Po kontejneru (procesi, datoteke, resursi) | Potpuna (virtuelizovani hardver) | Slaba — stotine stranica na istom serveru |
| Brzina pokretanja / isporuke | Sekunde | Minute (pokretanje cijelog OS-a) | Izmjene direktno na serveru uživo (FTP) |
| Opterećenje resursa | Minimalno — bez zasebnog OS-a po aplikaciji | Veliko — cijeli OS po mašini | Malo, ali nekontrolisano dijeljeno među susjedima |
| Povratak (rollback) | Trenutan — ponovno pokretanje prethodne slike | Iz snapshota — sporije | Ručno, iz sigurnosne kopije |
| Sigurnost | Incident ograničen na kontejner | Najjača izolacija | Jedna kompromitovana stranica može uticati na susjede |
| Trošak po stranici | Nizak — velika gustoća po serveru | Visok — plaćate cijelu mašinu | Vrlo nizak, ali nepredvidive performanse |
Često postavljana pitanja
Utiče li Docker na brzinu moje stranice?
Ne. Kontejneri rade nativno na Linux kernelu, bez sloja hardverske virtuelizacije, pa je dodatno opterećenje zanemarivo. Brzinu stranice određuju kod, keširanje i mreža — a izolacija resursa je zapravo čini predvidljivijom nego na dijeljenom hostingu.
Zašto ne klasični cPanel hosting, kao kod WordPressa?
Na klasičnom dijeljenom hostingu stotine stranica dijele isti server bez strogih ograničenja: zaposlen susjed vas usporava, a kompromitovan može uticati na vas. Na 4buildsite se objavljena stranica služi statički — nema koda po stranici koji bi se mogao kompromitovati — a servisi platforme rade izolirano u kontejnerima. Stvari koje cPanel ne nudi.
Šta se desi ako objava pokvari moju stranicu?
Prethodno objavljena verzija i dalje postoji, netaknuta, pa povratak je jedno prebacivanje: servis isporuke prebacuje se nazad na nju. Trgovina nikad ne ostaje zaglavljena na pokvarenoj verziji, a podaci u bazi ostaju netaknuti.
Moram li znati Docker da bih koristio 4buildsite?
Ne. Kontejnerizacijom u potpunosti upravlja platforma: stranicu gradite u vizuelnom editoru na panel.4buildsite.net i objavljujete. Docker radi „ispod haube“ — dobijate prednosti (izolacija, povratak) bez ikakve konfiguracije.
Je li Docker siguran za online trgovinu?
Da. Izolacija procesa i datotečnog sistema ograničava domet incidenta na taj kontejner, a ne na cijeli server. Podaci o karticama ionako nikad ne prolaze kroz kontejner — plaćanja obrađuje Stripe, na Stripeovoj certificiranoj infrastrukturi.
Je li Docker isto što i virtuelna mašina?
Ne. Virtuelna mašina virtuelizuje cijeli hardver i pokreće vlastiti operativni sistem — pokreće se minutama i troši mnogo. Kontejner dijeli kernel domaćina: pokreće se za sekunde, troši djelić resursa i drži aplikaciju izoliranom.