Home Explore Blog CI



docker

1st chunk of `content/guides/container-supported-development.md`
1d09d664faffb96fa2dbc7a91473b35552aadc2c910a229a0000000100000a73
---
title: "Faster development and testing with container-supported development"
linkTitle: Container-supported development
summary: |
  Containers don't have to be just for your app. Learn how to run your app's dependent services and other debugging tools to enhance your development environment.
description: |
  Use containers in your local development loop to develop and test faster… even if your main app isn't running in containers.
tags: [app-dev]
params:
  image: images/learning-paths/container-supported-development.png
  time: 20 minutes
  resource_links: []
---

Containers offer a consistent way to build, share, and run applications across different environments. While containers are typically used to containerize your application, they also make it incredibly easy to run essential services needed for development. Instead of installing or connecting to a remote database, you can easily launch your own database. But the possibilities don't stop there.

With container-supported development, you use containers to enhance your development environment by emulating or running your own instances of the services your app needs. This provides faster feedback loops, less coupling with remote services, and a greater ability to test error states.

And best of all, you can have these benefits regardless of whether the main app under development is running in containers.

## What you'll learn

- The meaning of container-supported development
- How to connect non-containerized applications to containerized services
- Several examples of using containers to emulate or run local instances of services
- How to use containers to add additional troubleshooting and debugging tools to your development environment

## Who's this for?

- Teams that want to reduce the coupling they have on shared or deployed infrastructure or remote API endpoints
- Teams that want to reduce the complexity and costs associated with using cloud services directly during development
- Developers that want to make it easier to visualize what's going on in their databases, queues, etc.
- Teams that want to reduce the complexity of setting up their development environment without impacting the development of the app itself


## Tools integration

Works well with Docker Compose and Testcontainers.

## Modules

### What is container-supported development?

Container-supported development is the idea of using containers to enhance your development environment by running local instances or emulators of the services your application relies on. Once you're using containers, it's easy to add additional services to visualize or troubleshoot what's going on in your services.

Title: Introduction to Container-Supported Development
Summary
This document introduces container-supported development, which involves using containers to enhance your development environment by running local instances or emulators of services your application relies on. It highlights the benefits of faster feedback loops, reduced coupling with remote services, and improved error state testing. It outlines what you will learn, who the target audience is, and how it integrates with tools like Docker Compose and Testcontainers.