Development environments can become cumbersome over time, with setup occasionally filling multiple pages of documentation and making onboarding new team members a difficult task. Whether you deploy your Python application using containers or not, Docker Compose is a great tool for defining development environments that closely mirror production and can be spun up with a single command.
By the end of this talk, audience members will understand the following concepts:
- Running application services/dependencies inside containers and its advantages and disadvantages.
- Defining application environment and services via Dockerfile, docker-compose.yml configuration files.
- Managing the environment using the docker-compose CLI.
To illustrate these concepts, a Django application will be configured to use a database, a cache, a queue and task worker.