<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn" -->

---
title: Testing your app with docker-compose on CircleCI | daily.dev
description: CircleCI's documentation for docker-compose is unclear, but setting up automated testing is straightforward once you know the key configuration. Use a Linux VM...
canonical: https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Testing your app with docker-compose on CircleCI | daily.dev
og:description: CircleCI's documentation for docker-compose is unclear, but setting up automated testing is straightforward once you know the key configuration. Use a Linux VM...
og:url: https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn
og:image: https://api.daily.dev/og/posts/KCLLFCdpn.png
og:image:alt: Testing your app with docker-compose on CircleCI
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Testing your app with docker-compose on CircleCI

**[Einenlum - Coding amongst alpacas and pinball machines](https://daily.dev/sources/einenlum)** · 5 min read · 0 upvotes · 0 comments

## Summary

CircleCI's documentation for docker-compose is unclear, but setting up automated testing is straightforward once you know the key configuration. Use a Linux VM (machine: true) instead of docker executors to enable docker-compose with volumes. The setup involves checking out code, running docker-compose up, installing dependencies in containers, executing tests, and optionally storing artifacts like screenshots. Permission issues may arise due to CircleCI's user ID (1001) differing from typical local setups (1000), which can be resolved by specifying the user in docker-compose exec commands.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.einenlum.com/articles/docker-compose-circle-ci/>

## Similar posts on daily.dev

- [Configuring Testcontainers to Work with Podman](https://daily.dev/posts/configuring-testcontainers-to-work-with-podman-fmeiwpuds) · Baeldung · 2 upvotes · 0 comments
- [Simplify managing your Docker compose files with this handy tool](https://daily.dev/posts/simplify-managing-your-docker-compose-files-with-this-handy-tool-xcxcu99kt) · The New Stack · 2 upvotes · 0 comments
- [How To Install and Use Docker Compose on CentOS 7](https://daily.dev/posts/how-to-install-and-use-docker-compose-on-centos-7-cmj83p7pg) · DigitalOcean Community · 1 upvotes · 0 comments

---

Tags: [#testing](https://daily.dev/tags/testing), [#docker](https://daily.dev/tags/docker), [#cicd](https://daily.dev/tags/cicd), [#docker-compose](https://daily.dev/tags/docker-compose), [#circleci](https://daily.dev/tags/circleci)

[View this post on daily.dev](https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Testing your app with docker-compose on CircleCI","url":"https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn"},"datePublished":"2026-02-01T08:36:43.683Z","dateModified":"2026-02-01T08:37:48.012Z","description":"CircleCI's documentation for docker-compose is unclear, but setting up automated testing is straightforward once you know the key configuration. Use a Linux VM...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/e3165bb200ed206ea1b6d8a4cc4ebe6a?_a=AQAEulh","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/e3165bb200ed206ea1b6d8a4cc4ebe6a?_a=AQAEulh","isAccessibleForFree":true,"articleSection":"Einenlum - Coding amongst alpacas and pinball machines","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Einenlum - Coding amongst alpacas and pinball machines","logo":"https://media.daily.dev/image/upload/s--QoeVvEJY--/f_auto,q_auto/v1769934130/logos/einenlum","url":"https://daily.dev/sources/einenlum"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/testing-your-app-with-docker-compose-on-circleci-kcllfcdpn","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"testing,docker,cicd,docker-compose,circleci","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Einenlum - Coding amongst alpacas and pinball machines","item":"https://daily.dev/sources/einenlum"},{"@type":"ListItem","position":3,"name":"Testing your app with docker-compose on CircleCI"}]}
```

