Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Docker Changes the Way You Develop and Release Your Scalable Solutions

Docker Changes the Way You Develop and Release Your Scalable Solutions

I T.A.K.E Unconference 2016 (Bucharest, Romania)

3a53a5136f530c121a196914aecf3936?s=128

Tugberk Ugurlu

May 20, 2016
Tweet

More Decks by Tugberk Ugurlu

Other Decks in Programming

Transcript

  1. Docker Changes the Way You Develop and Release Your Scalable

    Solutions Tugberk Ugurlu Redgate Software @tourismgeek http://tugberkugurlu.com #itakeunconf
  2. @tourismgeek tugberkugurlu.com github.com/tugberkugurlu stackoverflow.com/users/463785/tugberk

  3. @redgate

  4. The Problem

  5. None
  6. None
  7. Inconsistent Environments

  8. Result • Hard Onboarding • Hard to Set up Different

    Environments • Different Deployment Needs for Each Tech • Hard to Reproduce Issues
  9. What’s Docker? https://www.docker.com/what-docker

  10. What’s Docker? • Containerization • Provides Good Isolation • Consistent

    Environments
  11. Docker Family • Docker • Docker Compose • Docker Machine

    • Docker Swarm • Docker Registry
  12. docker run ubuntu /bin/echo 'Hello world' https://docs.docker.com/engine/userguide/containers/dockerizing/

  13. Packaging Your Application https://github.com/tugberkugurlu/AspNetCoreSamples/blob/master/rabbitmq-sample/rabbitsample.dockerfile

  14. $ docker build -t example-app -f rabbitsample.dockerfile .

  15. Packaging Dev Tools https://github.com/BenHall/docker-awscli/blob/master/Dockerfile

  16. None
  17. Docker Registry https://hub.docker.com

  18. None
  19. Docker Compose https://docs.docker.com/compose

  20. docker-compose.yml

  21. Demo docker-compose up https://github.com/tugberkugurlu/AspNetCoreSamples/tree/itakeu16/rabbitmq-sample

  22. Complete Example

  23. zleek.com

  24. Embrace Polyglot Persistence http://martinfowler.com/bliki/PolyglotPersistence.html

  25. Traditional Look MySuperShoppingApp My GIANT RDBMS Shopping Cart

  26. Polyglot Persistence Look MySuperShoppingApp MongoDB Elasticsearc h Neo4j SQL Server

  27. LB zleek-0 zleek-1 zleek-n mongodb neo4j elasticsearch rabbitmq recipe-generation-worker-0 recipe-sync-worker-0

    food-sync-worker-0 store-sync-worker-0 recipe-generation-worker-1 recipe-generation-worker-n recipe-sync-worker-n recipe-sync-worker-0
  28. None
  29. None
  30. None
  31. None
  32. None
  33. None
  34. Demo

  35. Deployments

  36. None
  37. http://www.infoworld.com/article/3040475/application-virtualization/4-no-bull-takeaways-about-docker-cloud.html