What is Vagrant? – Benefits – Drawbacks



What is Vagrant? – Benefits – Drawbacks

0 0


slides-indeed-vagrant-docker

InDeEd presentation of Vagrant & Docker

On Github cngroupdk / slides-indeed-vagrant-docker

Vagrant & Docker

Vagrant

Development environments made easy

What is Vagrant?

  • "syntactic" sugar for devs
  • a tool on top of full virtualization
    • virtualbox
    • vmware
  • supported hosts
    • linux
    • windows
    • OS X
  • supported guests
    • linux
    • windows (since 1.6)
    • hackintosh works, but ...

Why?

  • no tools collision
  • provisioning
  • files are automatically synchronized between guest and host system

Benefits

Benefits - do once, use everywhere

  • environment distribution among team members
  • environment for non-techies (designers, UX, ...)
  • reference environment
  • easy environment distribution
  • separation from hosting system

Drawbacks

  • performance penalty
  • file synchronization (specially by different OS types), but there is a good solution already

So what the f*** is Vagrant?

Nikolaii insisted, that the author of this slide must be named ... so it's me :-D

Demo

Vagrant cloud

  • vagrant.domain.local
  • existing Vagrant boxes:
    • AngularJS web app
    • AngularJS with SmartAdmin
    • eVAYO project box
    • Nomad RMT project box
  • CN GitHub repository with existing Vagrantfiles and documentation is in preparation

Docker

Build, Ship and Run Any App, Anywhere

What is Docker?

What is Docker?

  • tool used to ship the code to the server
  • application container
  • paravirtualization
  • originally based on Linux Containers (LXC), but independent now (libcontainer written in Go)
    • namespace isolation
    • CGroups
    • Union FS

Supported environments

  • linux is native
  • Windows and OS X via full virtualization
  • VMware is going to support Docker in his hypervisor
  • Amazon EC2 and Microsoft Azure are already supporting Docker in their clouds

Benefits

Benefits - create once, use everywhere

  • lower performance penalty as with full virtualization
  • independent on provider (EC2, Heroku, Ocean Digital, Linode, your own, ...)
  • scalability
  • environment replication
  • QA

Drawbacks

  • the isolation is not strict as with full virtualization
  • can be harder to isolate problems, when tuning performance
  • it is VERY young technology

Questions?

No, Mireček, not you! ;-)