ValidationError: Unsupported composition version

Trying to start https://github.com/monicahq/monica on balenaOS for Raspbery pi 3+ B and getting this error: ValidationError: Unsupported composition version can anybody help me with this, I am kind of new to docker and balena, just trying to figure why this doesn’t work.

Could you share a bit about what you’ve done, what setup you have etc? Are you using a balenaOS device unmanaged, or via balenaCloud?

Well first I tried using the BalenaOS downloaded from the https://www.balena.io/os/ for Raspberry Pi 3 B/B+, then I followed this guide https://www.balena.io/os/docs/raspberrypi4-64/getting-started/ step by step. I managed to run the test docker image, but when I clone some project with docker images I get this Unsupported composition version error.

I am interested to run this https://github.com/monicahq/monica/blob/master/docs/installation/docker.md project on my raspberry pi, but for some reason I cannot

That project has a default docker-compose.yml file, that you are deploying, right?

Unfortunately we only support docker-compose.yml files up to version 2.1, I believe. Here’s also the list of fields that we support: https://www.balena.io/docs/reference/supervisor/docker-compose/#supported-fields

It doesn’t seem to be a complicated compose file, and might be possible to have a “downgraded” version only using the fields supported by 2.1. Might even work just by changing the version number in this file, if it doesn’t even use any 3.4 features, and it migth work.

hmm… I didn’t know this, thank you! Let me try to just downgrade it and see if it works

Hey, I was trying that out myself as well, and found some other issues.

  • if updating the docker-compose.yml file, committing it, and doing and doing a git push, it starts to build, but there’s an error in a COPY step:
[monicahq]  Step 12/35 : COPY readme.md     CONTRIBUTING.md     CHANGELOG.md     CONTRIBUTORS     LICENSE     artisan     composer.json     composer.lock     ./
[monicahq]  COPY failed: stat /var/lib/balena32/tmp/docker-builder834690271/CHANGELOG.md: no such file or directory

even though that file is checked in.

  • if doing balena push with the CLI, it runs into another issue, not being able to interpret the project correctly (it thinks it’s a regular Node.js project)

I let our maintainers know about this, and will get back soon, it’s strange how many issues this project exposes. Likely we’ll need to look at our side before the deploy will work.

Sorry about the inconvenience, wanted to let you know this before you spend too much time debugging these issues if you’ve encountered them!

Yeah, I’ve encountered the node.js issue. Thank you for your help

Will you guys support version 3.4 of docker-compose in near future?

It’s not very likely, many of the features there are not relevant to our case.

But in this case the upstream project is somewhat troublesome, they don’t need that version, they don’t use any features from that version, I believe, so they set an unnecessarily high verison, instead of the lowest compatible one, I believe. But we’ll see.

Thanks! (and our team says it’s an interesting project too, thanks for bringing it to our attention! :slight_smile: