~/talk

Scaling Down: Running Large Sites Locally

Talkat PyCon AU 2017 · 2017-08-03..08-08· [devops-and-delivery]
slides:none on file

A practical account of running a huge Django site locally by building an internal tool called Bay that layers on Docker, supports dev modes for live-mounting code, and runs dependency graphs in parallel so developers avoid booting 150 containers at once. It trades full image rebuilds (previously hours) for cached, centrally built images and live mounts, cuts worst-case monolith rebuilds toward ten minutes, adds a Python init to track health and exit-on-failure, and publishes the project on GitHub.

AI-written summary · about

  1. 0:00Intro
  2. 1:26One big Vagrant VM
  3. 2:05150 Docker containers
  4. 3:45docker-compose
  5. 4:15bay
  6. 4:35Runs against Docker API
  7. 5:55Running subsets of the site Developer code "mounting"
  8. 7:01Containers & Links
  9. 10:54Did it boot yet?
  10. 12:58Runs parallel processes (and exits on any) Cleans up zombies
  11. 13:51TCP waits (socket opens) HTTP Waits (200 status check)
  12. 15:13Rebuilding is Bad
  13. 15:44Rebuilding core is about 10 mins It would be bad to do this on every tiny change.
  14. 18:57Our dependencies change every few hours You can see how the build caching is not so useful.
  15. 20:13Docker images are portable Just need to build them in the first place.
  16. 22:06Automated image building Plus versioning/tagging
  17. 23:22Running images remotely We really need to soon
  18. 24:32Running whole stacks remotely Potentially for integration testing/acceptance
  19. 25:33Trying not to reinvent the wheel I don't have the time to maintain another kubernetes/docker swarm/nomad!
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.