Docker je vedno bolj popularen, testiral sem ga že kar precej časa nazaj. Sedaj so Docker za plačilo seveda začeli ponujati tudi veliki “playerji” v svetu IT-ja. Namestit Docker ni nobena težava, sedaj ga vključuje že dobesedno vsaka Linux distribucija, najdemo ga tudi na OS X in kmalu bo zašel tudi v Windows svet. Toda namestitev Dockerja za resne namene, za namene produkcije, morda v Enterprise okolju, pa je lahko že večji izziv.
Moja želja je bila narediti sledeče:
– namestitev grafičnega UI vmesnika
– namestitev “cluster” konfiguracije
– uporaba resnega datotečnega sistema, recimo BTRFS
– najnovejša različica Dockerja 1.3.2
– delujoč scalling
– uporaba in določitev IP naslovov mimo DHCP
Celoten projekt sem postavil v Proxmox virtualizaciji, kjer sem namestil dva Ubuntu 14.04 strežnika. Oba strežnika sta imela primarno particijo EXT4 in sekundarni disk z BTRFS datotečnim sistemom. Tako na enostaven način z uporabo ukazov BTRFS naredim snaphoste Docker kontejnerjev. Docker sem iz privzete verzije, ki pride z Ubuntu distribucijo nadgradil na zadnjo možno različico 1.3.2.
Za grafični vmesnik sem izbral kar Shipyard, ki ga je enostavno za namestit, ima porodne krče, ampak deluje. Trenutno testiram še Project Atomic, ki teče že avtomatično na Fedora 21 in je zelo dodelan. Seveda pa je uporaba Dockerja še vedno najbolj zanimiva preko ukazne vrstice, kjer se da naredit popolnoma vse. Za dodeljevanje IP naslovov uporabljam kar skripto Pipeworks, s katero naredim vse na omrežnem nivoju.
Torej na kratko, kako začet z Dockerjem. Najlažja pot je namestitev Fedora 21, v namestitev vklopite kontejnerje in to je to. Po namestitvi, se priklopite na http://IP_NASLOV:9090, se prijavite z root uporabnikom, kliknete Containers, namestite Docker z enim klikom in imate dobesedno “up and running” sistem Project Atomic. Za začetek je to dovolj, za kako bolj produkcijsko namestitev pa seveda svetujem posebej diskovno particijo v BTRFS datotečnem sistemu in še kaj.
Med samim delom z Dockerjem boste naleteli na veliko omejitev in na drugačno logiko razmišljanja, kako Docker deluje. Podoben je OpenVZ, toda spet drugačen, logika, ki jo poznamo iz dosedanjega dela z Linuxom se malo spremeni. Na internetu je ogromno dokumentacije, sama dokumentacija na Dockerjevi strani je še najbolj skopa, tako da bo potrebno uporabiti veščine guglanja.