Programiranje

12 odprtokodnih orodij, ki izboljšajo Docker

Utripajte in morda boste zamudili nekaj najbolj zanimivih dogodkov okoli Dockerja v teh dneh. Kubernetes morda dobiva več vročega novega orodja, vendar Docker še naprej ponuja "ravno dovolj" orkestracije zabojnikov za večino razvojnih projektov in uvedb.

Plus Docker ima svoj bogat ekosistem tujih orodij, ki Dockerja razširijo, razveselijo ali zmanjšajo njegovo razburljivost. Tukaj je 12 odprtokodnih kreacij, ki jih Docker spodbudi ali Docker spodbudi, pri čemer izkoristi Docker za posebne primere uporabe ali olajša delo z Dockerjem.

Potapljanje

Slike Dockerja so kot sendviči z več plastmi. Mogoče je bolje reči, da so kot sendviči v neprozornih ovojih: ne veste vedno, koliko slojev je ali kaj je v njih. Potop vam omogoča vizualno raziskovanje plasti na Dockerjevi sliki prek interaktivnega uporabniškega vmesnika. Ogledate si lahko, katere sestavine so v vsaki plasti in določite tudi, kako je posamezna plast spremenila sloj pod njo (kaj je bilo dodano ali odstranjeno). Sliko lahko tudi analizirate za zapravljen ali podvojen prostor in rezultate celo prenesete v svoj cevovod za neprekinjeno integracijo, tako da slika s preveč zapravljenega prostora ne uspe v postopku izdelave.

Docker Compose UI

Docker Compose UI je projekt z licenco MIT, ki Docker Compose ponuja spletni uporabniški vmesnik, ki je zgrajen z uporabo ogrodja Python's Flask. Vsebnike je mogoče zagnati lokalno ali na oddaljenem gostitelju, sam uporabniški vmesnik Docker Compose pa je zaradi udobja na voljo v vsebniku Docker. Upoštevajte, da nekaterih predstavitvenih projektov, ki jih ponuja uporabniški vmesnik Docker Compose, ni mogoče prilagoditi "zaradi konfliktov objavljenih vrat".

Dockly

Večina Dockerjevih del se izvaja prek vmesnika CLI ali terminala, privzeti Docker CLI pa je podoben vsem drugim programom CLI. Dockly ponuja celozaslonski terminalski vmesnik za Docker - nadzorno ploščo v besedilnem načinu vseh delujočih zabojnikov, pogled v dnevnik dnevnikov vsebin in statistiko uporabe ter vgrajen jeziček lupine.

Prašno

Dusty je namenjeno razvojnemu okolju, ki ga podpira Docker in ima licenco MIT, da bi izboljšal uporabo Docker Compose ali Vagrant za upravljanje zabojnikov. Razvijalci, ki stojijo za Dusty, na primer trdijo, da ima Dusty preprostejši model specifikacij kot Docker Compose in da ločuje odvisnosti aplikacij in posodobitve storitev na osnovi različic bolje kot Vagrant. Dusty omogoča tudi izdelavo testov kot del specifikacije za okolje in omogoča, da se običajni večstopenjski postopki spremenijo v skript, ki ga je mogoče enostavno priklicati.

Elsy

Elsy opisujejo kot "samozavestno, večjezično orodje za gradnjo", ki uporablja Docker in Docker Compose. Elsy omogoča skladno gradnjo repozitorija programske opreme v vseh okoljih in orodja, potrebna za izvedbo gradnje, ohranja na minimumu, ne glede na to, kateri jezik je v uporabi. Ena predstavljena funkcija,blackbox-test, omogoča preskušanje katerega koli zgrajenega zabojnika na način, ki odraža njegovo dejansko proizvodno uporabo. Na primer, za katero koli storitev, ki potrebuje bazo podatkov, bo nastavljen vsebnik baze podatkov, Elsy pa bo nato samodejno podrla testno okolje.

Gockerize

Tu je ena za ljubitelje jezika Go. Gockerize je orodje z licenco BSD za izdelavo statičnih datotek Go in njihovo pakiranje v minimalne vsebnike Go. Gockerize, ki so ga ustvarili ljudje, ki stojijo za AeroFS, vključuje funkcije, kot je "zmožnost samodejnega nabora popravkov v standardni knjižnici Golang; nekaj, kar je sicer zelo redko, vendar lahko reši življenje, «piše ​​v prispevku v blogu, ki predstavlja projekt. Gockerize se ne zanaša veliko na zunanjost - samo na Go, Docker 1.5 ali novejšo in lupino Bash.

Habitus

Še eno orodje za gradnjo, ki temelji na Dockerju, Habitus uporablja datoteko Dockerfile in datoteko build.yml za ustvarjanje večstopenjskih zgradb vsebnikov, ki vsebujejo poljubno število poljubnih ukazov. Vsak korak v gradnji se lahko zanese na nek prejšnji korak, da se zagotovi, da vse zapletene večstopenjske odvisnosti delujejo pravilno. Habitus podpira tudi vključevanje skrivnosti v postopek gradnje in to ne da bi na sliki pustil sledi.

Hyper

Hyper uporablja Docker, QEMU in Xen za doseganje svojih ciljev, zaračunano kot "hipervizorno-agnostično orodje, ki omogoča zagon Dockerjevih slik na katerem koli hipervizorju". Ustvarjalci orodja trdijo, da Hyper uporablja minimalne vire (28 MB), zažene se s hitrostjo vsebnika in ne VM, zagotavlja visoko zmogljivost in zagotavlja strojno prisilno izolacijo aplikacij. Eden od predlaganih primerov uporabe Hyperja je ustvarjanje večnajemniških aplikacij, ki temeljijo na Dockerju.

Kitematic

Včasih si želite le GUI. Kitematic vam ponuja GUI za upravljanje vsebnikov Docker v sistemih MacOS, Ubuntu Linux in Windows. Dodatne pripomočke Kitematic vključujejo samodejno razkrivanje podatkov o obsegu vsebnika prek datotečnega sistema, zagotavljanje vgrajenega CLI-ja za Docker in samodejno sinhronizacijo njegovega stanja, da se ujema s spremembami v Docker-ju (npr. Ko dodate nove slike vsebnika).

Logspout

Unixov svet ima dolgo tradicijo kombiniranja majhnih programov za reševanje velikih problemov. Logspout uporablja isto filozofijo pri upravljanju dnevnikov iz Dockerjevih vsebnikov. Cevi za hlode vse hlode (stdout instderr, v glavnem) iz vseh vsebnikov na določenem gostitelju do tistega cilja, ki se vam zdi najboljši. Nastale združene dnevnike si lahko v realnem času ogledate preprosto z branjem toka HTTP.

Portainer

Tudi razmeroma preprost Docker-ov sklad ima lahko veliko gibljivih delov: vsebnike, slike, omrežja, količine, skrivnosti. Spremljanje vsega tega v glavi ni rešitev. Portainer ponuja spletni uporabniški vmesnik za okolja Docker, ne glede na to, ali gre za posamezne gostitelje ali grozde, in ponuja enodelni pogled na vse, kar izvajate. Upravljanje in pregled vseh običajnih komponent Dockerja sta oddaljena le nekaj klikov. Najboljše od vsega je, da je vse skupaj postavljeno v vašo obstoječo Dockerjevo infrastrukturo kot en sam vsebnik.

Whalebrew

Uporabniki MacOS-a bi morali poznati Homebrew, ad hoc sistem za upravljanje paketov za MacOS. Whalebrew vam omogoča namestitev Dockerjevih slik in njihovo zagon neposredno iz ukazne vrstice z vzdevkom, kot da bi bile lokalno nameščene izvedljive datoteke. Namestitev paketov je tako enostavna kot tipkanje namestite whalebrew . Paketi, ki jih kurira repozitorij Whalebrewa, najbolje delujejo, a teoretično bi morala delovati katera koli Dockerjeva slika, ki zajema ukaze CLI.

$config[zx-auto] not found$config[zx-overlay] not found