Docker at the Home Office

Docker at the Home Office

3a1c6ce62064c58e2420e9e27c125716?s=128

Billie Thompson

October 03, 2015
Tweet

Transcript

  1. Docker at the Home Office Billie Thompson @PurpleBooth https://github.com/PurpleBooth/flappy-endpoint -

    Examples!
  2. Billie Thompson @PurpleBooth Developer & Reluctant DevOps

  3. None
  4. None
  5. None
  6. None
  7. None
  8. –Docker “Docker is an open platform for developing, shipping, and

    running applications. Docker is designed to deliver your applications faster.”
  9. –Docker “Docker […] makes use of another technology called cgroups

    or control groups. A key to running applications in isolation is to have them only use the resources you want.”
  10. What is docker? Linux Kernel

  11. What is docker? Linux Kernel

  12. What is docker? Linux Kernel

  13. What is docker? Linux Kernel

  14. What is docker? Linux Kernel

  15. What is docker? Linux Kernel

  16. What is docker? Linux Kernel

  17. How do you run a container? $ docker run \

    --name=“flappy” \ -p “80:80" \ quay.io/purplebooth/flappy-endpoint
  18. None
  19. Finding containers • registry.hub.docker.com (Sort by Stars) • Websites of

    software you’re using • Quay.io
  20. How do you make a container

  21. What is docker? FROM

  22. What is docker? FROM COPY

  23. What is docker? FROM COPY COPY

  24. What is docker? FROM COPY COPY RUN

  25. What is docker? FROM COPY COPY RUN quay.io/purplebooth/flappy-endpoint:latest

  26. None
  27. Continuous Integration • Your artefact is now a container •

    Online build servers • https://hub.docker.com/ • https://quay.io/repository/
  28. 12 Factor • http://12factor.net/ • Key changes to your app:

    • Log to STDOUT • Configure using Environment variables
  29. Docker is awesome but how to manage

  30. Docker is awesome but how to manage ?

  31. None
  32. None
  33. None
  34. None
  35. Work like us • What and how we reuse things

    • Think like a platform • Work Securely
  36. Things We Reuse • Reuse Code • Reuse Containers •

    Reuse Environments
  37. The worlds most successful code reuse project • Work openly

    • Open source • Be Good People
  38. Being a good person (inside and out) • Version stuff

    (SemVer) • Write Beautiful Documentation • License • Code of Conduct
  39. Thinking like a Platform • Jira • Git • File

    Hosting
  40. Thinking like a PaaS • AWS + Kubernetes • CoreOS

    on AWS (with Kubernetes) • Google Container Engine (Kubernetes) • Vagrant + Kubernetes • KUBERNETES!
  41. Work Securely • Use WAF Containers • Control your upstream

    containers! • Physical separation (sometimes)
  42. Any Questions! @purplebooth • https://billie.codes/1MXEtRc - Kubernets on Vagrant •

    https://github.com/PurpleBooth/flappy-endpoint • https://ukhomeoffice.github.io/