Diving into Docker (Part 4): Containerizing an app