Skip to content

7 chapters · 100 minutes

The workshop

From an app that quietly calls home to a sealed release running in a container with no network. Work through them in order; each ends with a way to check it worked.

  1. 01Welcome to the islandYour customer runs everything in a network with no internet. Meet the app you have to get there, and the guard that makes your laptop behave like the island.10 min
  2. 02Catch the phone-homesApps call home in quiet ways. Find every one, at run time and by reading the code, and give the island an offline switch.15 min
  3. 03Pack the crateWhatever crosses the gap must be one file, complete, and checkable on the other side. Pack Parrot into a sealed crate that comes out byte-for-byte the same every time.15 min
  4. 04Cross the gapSend the crate across, meet some pirates, and let the harbour master check everything before a single file touches the island.15 min
  5. 05Bring your dependenciesThe island has no PyPI. Everything your app imports must cross the gap with it, down to the dependencies of your dependencies, pinned and hashed.15 min
  6. 06The real gap, in DockerSo far the gap was a Python hook. Now make a real one: a container with no network at all. Then carry the container image itself across.15 min
  7. 07Updates, rollback and the VPC checklistA ferry that comes once a week makes every release count. Ship an update, roll it back in a second, and leave with the list of what an air-gapped VPC needs.15 min