# Docker-compose.yml version 2.3

**URL:** <https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743>\
**Category:** Build Environment\
**Created:** [October 12, 2018, 11:44pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743 "2018-10-12T23:44:59Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![worc](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/worc/32/18881_2.png) [@worc](https://discuss.circleci.com/u/worc)\
**Post date:** [October 12, 2018, 11:44pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/1 "2018-10-12T23:44:59Z")

</div>

i’m using the machine image circleci/classic:latest, and it’s breaking on the docker-compose yaml file version. is there any way to fix this?

---

<div class="post-metadata">

**Author:** ![halfer](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/halfer/32/9083_2.png) [@halfer](https://discuss.circleci.com/u/halfer)\
**Post date:** [October 13, 2018, 9:05am UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/2 "2018-10-13T09:05:50Z")

</div>

How is it breaking? Please offer as much detail as you can.

---

<div class="post-metadata">

**Author:** ![worc](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/worc/32/18881_2.png) [@worc](https://discuss.circleci.com/u/worc)\
**Post date:** [October 15, 2018, 5:14pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/3 "2018-10-15T17:14:15Z")

</div>

it says outright it doesn’t support docker-compose yaml 2.3 (not necessarily any particular version of docker-compose itself). so i guess the question is more, is there a pre-set machine that supports [the docker-compose version that supports] that yaml version?

or should i be looking into a more custom config for the machine?

---

<div class="post-metadata">

**Author:** ![halfer](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/halfer/32/9083_2.png) [@halfer](https://discuss.circleci.com/u/halfer)\
**Post date:** [October 15, 2018, 7:35pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/4 "2018-10-15T19:35:35Z")

</div>

> [@worc](#):
>
> it says outright

What says this? 😺

If you are relying on a pre-installed version of Docker or Docker Compose, you can always upgrade it to the latest version. The one in the OS repo may be more recent, or you can add the Docker repo to the machine one, and then update to that (latest stable).

---

<div class="post-metadata">

**Author:** ![FelicianoTech](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/felicianotech/32/21348_2.png) [@FelicianoTech](https://discuss.circleci.com/u/FelicianoTech)\
**Post date:** [October 22, 2018, 11:22pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/5 "2018-10-22T23:22:23Z")

</div>

Hey,

So the problem is, as the message state, it’s not supported. You are trying to use the Docker Compose v2.3 file syntax which requires Docker Compose v1.16 and higher. The default machine image on CircleCI is using Docker Compose v1.14.

I’d suggest using a newer machine image such as in the example below:

```auto
version: 2
jobs:
  build:
    machine:
      image: circleci/classic:201808-01
    steps:
      - checkout

```

The image above includes Docker v18.06.0-ce and Docker Compose v1.22.0.

---

<div class="post-metadata">

**Author:** ![arthurio](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/arthurio/32/12137_2.png) [@arthurio](https://discuss.circleci.com/u/arthurio)\
**Post date:** [December 11, 2018, 8:24pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/6 "2018-12-11T20:24:29Z")

</div>

I landed on this post by chance after looking for a way to know what image I could use to support Docker-compose file version 3.4. Is there a page listing the `circleci/classic` images with the matching docker engine version?

---

<div class="post-metadata">

**Author:** ![halfer](https://sea2.discourse-cdn.com/circleci/user_avatar/discuss.circleci.com/halfer/32/9083_2.png) [@halfer](https://discuss.circleci.com/u/halfer)\
**Post date:** [December 11, 2018, 8:37pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/7 "2018-12-11T20:37:59Z")

</div>

@arthurio: if you are using Docker Compose, you may not need to use Machine. Docker Compose works very nicely inside the Docker executor (i.e. Docker in Docker). Do you have a particular reason to use Machine?

---

<div class="post-metadata">

**Author:** ![system](https://global.discourse-cdn.com/circleci/original/3X/5/1/511608acda8e85906e15909b57bd0a46c1dbe291.png) [@system](https://discuss.circleci.com/u/system)\
**Post date:** [March 11, 2019, 8:38pm UTC](https://discuss.circleci.com/t/docker-compose-yml-version-2-3/25743/8 "2019-03-11T20:38:32Z")

</div>

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.
