2016-07-11 26 views

risposta

17

Questo è costeggiando i limiti della politica di StackOverflow su domande aperte, ma io ti risponderò in ogni caso:

Docker e degli habitat in realtà non si sovrappongono molto. Il punto principale della competizione è la creazione di artefatti di rilascio. Docker ha Dockerfiles e docker build, Habitat ha piani e lo Studio. L'output di entrambi può essere comunque un'immagine di Docker, che è fondamentalmente un tarball di un filesystem insieme ad alcuni metadati. L'obiettivo di Habitat è quello di creare artefatti super minimi, ad esempio non includere una distro Linux di alcun tipo, nessun gestore di pacchetti, solo codice eseguibile compilato staticamente e qualsiasi altro file di supporto necessario per quella specifica app.

Come per il runtime, sono ortogonali al 100%. Docker è un modo per eseguire un processo all'interno di un gruppo di funzionalità di sicurezza Linux che ora viene chiamato collettivamente "contenitore". Habitat è un piccolo stub che circonda il tuo processo e gestisce cose come la distribuzione della configurazione di runtime, il trasferimento dei segreti e l'individuazione dei servizi. Queste funzionalità sono più sovrapposte a strumenti di livello superiore come Kube, ma anche in questo caso si sovrappongono a malapena. Hai bisogno di qualcosa per avviare effettivamente hab-sup, che potrebbe essere docker run (possibilmente tramite Swarm), Nomad, Kube, o anche un sistema non contenitore come Upstart o Runit se lo si desidera. L'unico punto di interazione tra questi è che tutti gli strumenti avviano un processo di un punto di accesso e hab-sup è un processo generico di un punto di accesso che fornisce a qualsiasi app in cui viene eseguito alcune funzioni interessanti se vogliono utilizzarli.

+0

Ha modificato la domanda in modo più specifico, si spera che la gente non voterà per chiuderla ora. Quindi non userei un DockerFile con Habitat anche se entrambe le immagini Docker di output? – Justin

+0

Ciò è corretto, Habitat crea i suoi artefatti HART e li converte in immagini Docker. È un sistema di porte a FreeBSD, Homebrew o Portage piuttosto che un sistema di script di build. – coderanger

+0

Segnalo come risposta corretta, quindi grazie per il tempo dedicato ai punti chiarificatori. Se non ti dispiace, tuttavia, ho un'altra domanda. Dici che posso usare Docker Swarm (o la funzione docker) per eseguire effettivamente Habitat (hab-sup)? Quindi sono in grado di usare Docker Swarm insieme a Habitat? – Justin

Problemi correlati