Beyond Local Development w/Kalabox (SFDUG July 2015)

Preview:

Citation preview

Beyond Local Development

w/Docker and Kalabox

Kalamuna is an agency in the San Francisco East Bay aka Oakland that makes the internet for rabble rousing companies and organizations.

I’m a co-founder at Kalamuna.

I listen to people and help solve their problems.

reynoldsalec

alec@kalamuna.com

Alec Reynolds

areynolds

The Age Old Problem.

To work on a website, we need an easy way to run it on our local computer.*

What do you use to solve this problem?

Ok, local dev is great. But why change from MAMP/Vagrant/etc?

Pros:■ Good performanceCons:■ 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(Ex: MAMP, XAMP, Acquia Dev Desktop)

Existing Local Dev Solutions: Virtual Machines(Ex: Drupal Quickstart)

Pros:■ Production Parity■ Easier to deploy/version toolingCons:■ All applications must run on same infrastructure■ Hard to test/debug new infrastructure■ Typically SLOW AS BALLZ

The Age Old Problem (Add.).

As web developers, we work with an increasing number of frameworks, hosting providers, and other tools. Setting up these tools is complex.

Dev Tool EXPLOSION.

DRUSH

DRUSH

2010 2015

Framework Funhouse.

Hosting, Deploying, and CI (oh my!)

#AberdeenCloud

The Age Old Problem (Add.).

As a result, we waste time, money, and our precious sanity.

What are we looking for in the perfect local dev environment?

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

Introducing Kalabox..

Kalabox is a single tool a developer can use to work with a wide range of popular hosting providers and other developer tools.

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.

Is it fast?

Virtual Machine

Virtual Machine vs. Container

Container

Virtual Machine

Virtual Machine vs. Container

Container

This is heavy

Some hard numbers

VagrantVirtual Machine

DockerContainers

● ~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

Can I run it on Windows?

Windows

■ Standardize your entire team

■ Bring more people into the community

■ Reduce barriers to entry

Linux

■ Standardize your entire team

■ Bring more people into the community

■ Reduce barriers to entry

How about integrating with my external tools?

Kalabox architecture

Mac OSX/Windows/Linux

Provider/Boot2Docker/TinyCoreLinux

Express Othersv

Backdrop Drupal8

DRUSH

Metaslide for demo:

1. Download app from Pantheon

2. Show environment parity

3. Show Solr/Redis config

4. HTTPS

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

Roadmap

LOCAL DEV FOR THE MASSES: VAGRANT + VIRTUAL BOX + PUPPET = KALABOX

Fall 2015

Roadmap

LOCAL DEV FOR THE MASSES: VAGRANT + VIRTUAL BOX + PUPPET = KALABOX

This sounds great! How do I learn more?

bit.ly/kbox-savvy

Questions?

bit.ly/kbox-savvy

Thank You!

bit.ly/kbox-savvywww.kalamuna.comalec@kalamuna.com