Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Containers Aren't Just for the Cloud

267 views

Published on

As web developers, we use a huge range of frameworks, hosting providers, and other tools. Installing, configuring, and integrating with all of these tools in our local development environments is an increasingly large challenge. Older local development solutions using native installations of basic services don't achieve adequate production parity and leave team members using different versions of key tools. Newer virtualized solutions like Vagrant can solve some problems, but can be frustratingly slow to use.

Enter Kalabox.

Kalabox provides an easy-to-use architecture to orchestrate Docker containers on Mac OS, Windows, and Debian. Learn how you can use Kalabox to create a more effective local development stack for your entire team and start eliminating the barrier between your local and production environments.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Containers Aren't Just for the Cloud

  1. 1. Containers Aren’t Just for the Cloud Local Development with Docker and Kalabox
  2. 2. I’m a co-founder at Kalamuna. I listen to people and help solve their problems. reynoldsalec alec@kalamuna.com Alec Reynolds areynolds
  3. 3. Ben Cauldwell I’m the lead developer of Kalabox. I dig deep to find elegant solutions for complicated problems.
  4. 4. Kalamuna is an agency in the San Francisco East Bay aka Oakland that makes the internet for rabble rousing companies and organizations.
  5. 5. What is Docker?
  6. 6. What is Docker? . “An easy, lightweight virtualized environment for portable applications.” --Docker website
  7. 7. Stop with the Bay Area doublespeak and break it down for me kid.
  8. 8. What is Docker? . “An easy, lightweight virtualized environment for portable applications.” Docker uses containers.
  9. 9. Virtual Machine What is a container? Containe r
  10. 10. Virtual Machine Why use containers? Containe r This is heavy
  11. 11. Why use containers? .Quick re-building and deployment of apps. Faster scaling. Require fewer resources (= lower hosting bill)
  12. 12. What is Docker? . “An easy, lightweight virtualized environment for portable applications.” Docker uses containers. Docker makes it easy to have groups of containers that work together to power your app.
  13. 13. What is Docker? . “An easy, lightweight virtualized environment for portable applications.” Docker uses containers. Docker makes it easy to have groups of containers that work together to power your app. Docker apps are easier to install, configure, and deploy.
  14. 14. Why Would I Use Docker for Local Development?
  15. 15. Pros: ■ Good performance Cons: ■ Websites don’t run on Mac OS X (prod parity) ■ Tooling has unreliable versions ■ Issues updating team tooling ■ Not cross-platform Existing Local Dev Solutions: Native
  16. 16. Existing Local Dev Solutions: Virtual Machines Pros: ■ Production Parity ■ Easier to deploy/version tooling Cons: ■ All applications must run on same infrastructure ■ Hard to test/debug new infrastructure ■ Typically SLOW AS BALLZ
  17. 17. Simple. Easy setup. Fast. Flexible. Complete. Open Source. Cross- Platform Your Tooling. Prod Parity. Jeff Geerling - http://www.midwesternmac.com/blogs/jeff-geerling/developing-drupal-vagrant-and
  18. 18. Jeff Geerling - http://www.midwesternmac.com/blogs/jeff-geerling/developing-drupal-vagrant-and Simple. Easy setup. Fast. Flexible. Complete. Open Source. Cross- Platform Your Tooling. Prod Parity.
  19. 19. Some hard numbers Vagrant Virtual Machine Docker Containers ● ~15 min install time ● ~6 min Drupal install ● ~Run 1 webserver ● ~20 tools ● ~5 min install time ● ~2 min Drupal install ● ~Run plethora of containers ● As many tools as you want
  20. 20. Jeez, that sounds great. What else could a dev want?
  21. 21. Batteries Not Included: DNS Routing . Docker: 1. Start boot2docker in VirtualBox 2. Start server container: docker run -d -P --name web nginx 3. Lookup the container’s port: docker ps 4. Go to the url: http://localhost:49157
  22. 22. Batteries Not Included: DNS Routing . ■ Have you ever edited /etc/hosts? ■ Do you never want to touch it again?
  23. 23. Batteries Not Included: Filesharing . ■ Sharing files between a virtual machine and its host can be slow
  24. 24. Batteries Not Included: Pluggable App Infrastructure . ■ What if I want to do something on a certain step of my app’s spin-up? ■ What if I wanted to package dev tooling along with my app setup and make CLI commands available? ■ What if I want to integrate with cloud dev tools and hosting providers?
  25. 25. You can think about Kalabox as a super-fast, highly customizable Vagrant for containers.
  26. 26. Kalabox architecture Mac OSX/Windows/Linux Provider/Boot2Docker/TinyCoreLinux Express Others v Backdr op Drupal8 DRUSH
  27. 27. What it all means ● Save tons of time ● Use the tools you deserve ● Production parity ● Standardize your team, tools and flow ● Use the latest and greatest
  28. 28. Metaslide for demo: 1. Spin up some apps 2. Show app arch 3. Show customize opts 4. Show plugins
  29. 29. Roadmap LOCAL DEV FOR THE MASSES: VAGRANT + VIRTUAL BOX + PUPPET = KALABOX Summer 2015
  30. 30. Roadmap LOCAL DEV FOR THE MASSES: VAGRANT + VIRTUAL BOX + PUPPET = KALABOX
  31. 31. Questions?
  32. 32. Thank You! www.kalamuna.com alec OR ben@kalamuna.com

×