Spend a full day learning about Docker and related tools with Matthias Noback and Lucas van Lierop.
- Use this day to finally take a deep dive into Docker,
- Or bring your own Docker-based project and leverage the combined knowledge of all participants to make it better.
- Work together, or alone.
- Don't follow along with the teacher, find your own path instead.
- Not limited to PHP, use the language of your choice.
We'll offer interesting and useful material: articles, exercises, tips & tricks.
A selection of topics you could choose from:
- Continuous integration, including UI tests
- Design principles
- Running build tools
- How to deal with annoying stuff (e.g: users, file permissions, signal handling, dependencies between services)
- Health checks
- Security
- Clustering
5. Image-based deployments
No build steps on the production server
Instead of:
● Building the software on the production server
● Non-deterministic builds
6. Limited abilities
Containers run in isolated environments
Instead of:
● Processes that implicitly have access to everything on the machine
11. Architecture considerations
Focus on clear
specifications for how the
service is connected to its
surroundings.
http://alistair.cockburn.us/Hexagonal+architecture
12. Focus on "everything in a box"
Self-contained, explicit, no loose ends.
https://12factor.net/
13. No attachment to servers
● No manual actions on the server
● Provisioning fully automated
● Pets vs kettle
● Destroyable and recreatable infrastructure
27. In the morning: two options
- Docker Introduction (Docker Engine, Compose, Machine, Swarm)
- Your Next Step
28. Different stages of using Docker
1. Side project
2. Development environment (e.g. instead of Vagrant)
3. For Continuous Integration (CI) (stable CI environment)
4. Deployment to a staging and/or production environment
5. Images as build artefacts in a pipeline for Continuous Delivery
6. Improve resilience of containers in a production environment
30. Time flies Pick small tasks, create issues
Check every half hour: am I still on track?
Share useful snippets, articles, etc.
Celebrate and share success
https://github.com/lucasvanlierop/docker-festival-workshop