Lagoon
OpenSource Build & Deployment System for OpenShift & Kubernetes w4Ds
BadCamp 2017
Michael Schmid
@Schnitzel
CTO amazee.io
CTO Amazee
michael@amazee.com
History
- 2015
- Local Development on Vagrant
- 2016:
- Too much pain - need something faster
- Local Development in Docker
- Decoupled Requirements
- First Production Site in Docker
- 2017:
- We like that!
- Open Source FTW - Lagoon
Open Source
Proprietary Hosting
vs.
Proprietary Hosting
Open Sourceness of Drupal Hosting
- ✅ Drupal
- ❌ Hosting Platform
- ✅ PHP
- ✅ Nginx
- ✅ MySQL
- ✅ Operating System
- ✅ Linux
Lagoon is fully Open Source
- All Docker Images
- All Service Configurations
- Build & Deploy Scripts
- Test Infrastructure
Lagoon uses Open Source
- OpenShift
- Kubernetes
- Alpine Docker Images
TL;DR;
Local
OpenShift
Kubernetes
Lagoon
Too Short; Want More.
Local
OpenShift
Kubernetes
Lagoon
- Reads docker-compose.yml
- Build Images
- Setup OS Projects
- Push Images to OS Registry
- Configure Resources
- Monitor Deployments
Develop with docker-compose
Notifications
Webhooks
Git Push
Orchestration
Microservices
Runs itself in OpenShift
Lagoon deploys Lagoon
Lagoon is integration tested
- Ansible
- Starts new OpenShift & Lagoon
- Creates fresh git repo
- Commits Node.js code with random string
- Let's Lagoon deploy from that git repo
- Checks if deployed App contains random string
Lagoon runs Docker Images
- Whatever you can put into Docker
- It deploys with Lagoon
- Lagoon itself:
- Node, SSH, Elasticsearch, MongoDB, Kibana, Logstash
- Existing Templates for:
- Drupal, Node
Lagoon is locally developed
- Minishift for OpenShift
- docker-compose for services
- Ansible for testing
Demo
How to run it
- Needs Open Shift (use included MiniShift for playing)
Wanna help?
- https://github.com/amazeeio/lagoon
- Don't worry - everything tested
- Native Kubernetes support?
- More CMS support?
- Your ideas!
Lagoon BadCamp 2017
By Michael Schmid
Lagoon BadCamp 2017
- 1,857