[GH-ISSUE #994] Specification version 3.7 in docker-compose.yml is unsupported (Debian 10, Docker 20.10, Compose 1.21) #603

Closed
opened 2026-03-02 02:17:36 +03:00 by kerem · 1 comment
Owner

Originally created by @nativeit on GitHub (Feb 27, 2022).
Original GitHub issue: https://github.com/amidaware/tacticalrmm/issues/994

Server Info (please complete the following information):

  • OS: Debian 10
  • Browser: Chrome
  • RMM Version (as shown in top left of web UI): N/A (Latest Docker Compose image)

Installation Method:

  • Standard
  • Docker

Describe the bug
After configuring .env file according to documentation, using the unmodified docker-compose.yml linked in the documentation, issuing docker-compose up -d results in the following error:

ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/

My software versions are as follows:

root@debian:/# dpkg -l | grep ii | grep docker
ii  docker-ce                                             5:20.10.12~3-0~debian-buster          amd64        Docker: the open-source application container engine
ii  docker-ce-cli                                         5:20.10.12~3-0~debian-buster          amd64        Docker CLI: the open-source application container engine
ii  docker-ce-rootless-extras                             5:20.10.12~3-0~debian-buster          amd64        Rootless support for Docker.
ii  docker-compose                                        1.21.0-3                              all          Punctual, lightweight development environments using Docker
ii  docker-scan-plugin                                    0.12.0~debian-buster                  amd64        Docker scan cli plugin.
ii  golang-docker-credential-helpers                      0.6.1-2+deb10u1                       amd64        native stores to safeguard Docker credentials
ii  python3-docker                                        3.4.1-4                               all          Python 3 wrapper to access docker.io's control socket
ii  python3-dockerpty                                     0.4.1-1                               all          Pseudo-tty handler for docker Python client (Python 3.x)
ii  python3-dockerpycreds                                 0.3.0-1                               all          Python3 bindings for the docker credentials store API

To Reproduce
Steps to reproduce the behavior:

  1. On a fresh Debian 10 LAMP VPS with all prerequisites installed
  2. Running Docker Engine v20.10.12~3 and docker-compose v1.21.0-3
  3. Configure .env according to Tactical RMM docs
  4. Download compose spec from Tactical RMM docs here
  5. Run docker-compose up -d

Expected behavior
Docker Compose should pull images and run containers specified in docker-compose.yml

Additional context
I am not exactly an expert in Docker, however I have been running a Caprover server with dozens of Docker Compose based images for the last few years, and have had my own contributions of complex Caprover one-click-app templates accepted to their official app repository (incl. Redmine+MySQL, Redmine+PostgreSQL, Netbox, and contributed to other app templates like Corteza CRM/ERP and Invoice Ninja).

I only say this to demonstrate a solid foundational understanding of Docker and Docker Compose specs, and a high comfort level in writing Compose specifications with dynamic variables and advanced features. I will continue to troubleshoot this problem on my own, and will post back if I find the cause of the problem (or figure out where I went wrong). I am also happy to submit a PR if I find a fix that does not affect other features/functions in any other way if that would make the dev's lives easier.

Thank you so much for your work on this project, I am an eager supporter of this endeavor!

Originally created by @nativeit on GitHub (Feb 27, 2022). Original GitHub issue: https://github.com/amidaware/tacticalrmm/issues/994 **Server Info (please complete the following information):** - OS: Debian 10 - Browser: Chrome - RMM Version (as shown in top left of web UI): N/A (Latest Docker Compose image) **Installation Method:** - [ ] Standard - [X] Docker **Describe the bug** After configuring `.env` file according to documentation, using the unmodified `docker-compose.yml` [linked](https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/docker/docker-compose.yml) in the documentation, issuing `docker-compose up -d` results in the following error: ``` ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1. For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/ ``` My software versions are as follows: ``` root@debian:/# dpkg -l | grep ii | grep docker ii docker-ce 5:20.10.12~3-0~debian-buster amd64 Docker: the open-source application container engine ii docker-ce-cli 5:20.10.12~3-0~debian-buster amd64 Docker CLI: the open-source application container engine ii docker-ce-rootless-extras 5:20.10.12~3-0~debian-buster amd64 Rootless support for Docker. ii docker-compose 1.21.0-3 all Punctual, lightweight development environments using Docker ii docker-scan-plugin 0.12.0~debian-buster amd64 Docker scan cli plugin. ii golang-docker-credential-helpers 0.6.1-2+deb10u1 amd64 native stores to safeguard Docker credentials ii python3-docker 3.4.1-4 all Python 3 wrapper to access docker.io's control socket ii python3-dockerpty 0.4.1-1 all Pseudo-tty handler for docker Python client (Python 3.x) ii python3-dockerpycreds 0.3.0-1 all Python3 bindings for the docker credentials store API ``` **To Reproduce** Steps to reproduce the behavior: 1. On a fresh Debian 10 LAMP VPS with all prerequisites installed 2. Running Docker Engine v20.10.12~3 and docker-compose v1.21.0-3 3. Configure `.env` according to Tactical RMM docs 4. Download compose spec from Tactical RMM docs [here](https://raw.githubusercontent.com/wh1te909/tacticalrmm/master/docker/docker-compose.yml) 5. Run `docker-compose up -d` **Expected behavior** Docker Compose should pull images and run containers specified in `docker-compose.yml` **Additional context** I am not exactly an expert in Docker, however I have been running a [Caprover](https://github.com/caprover) server with dozens of Docker Compose based images for the last few years, and have had my own contributions of complex Caprover one-click-app templates accepted to their [official app repository](https://github.com/caprover/one-click-apps) (incl. Redmine+MySQL, Redmine+PostgreSQL, Netbox, and contributed to other app templates like Corteza CRM/ERP and Invoice Ninja). I only say this to demonstrate a solid foundational understanding of Docker and Docker Compose specs, and a high comfort level in writing Compose specifications with dynamic variables and advanced features. I will continue to troubleshoot this problem on my own, and will post back if I find the cause of the problem (or figure out where I went wrong). I am also happy to submit a PR if I find a fix that does not affect other features/functions in any other way if that would make the dev's lives easier. Thank you so much for your work on this project, I am an eager supporter of this endeavor!
kerem closed this issue 2026-03-02 02:17:36 +03:00
Author
Owner

@nativeit commented on GitHub (Feb 27, 2022):

Evidently 1.21.0-3 is the latest version available in the apt repos for Debian Buster. I found a workaround by manually installing Docker Compose according to the instructions at https://docs.docker.com/compose/install/. This brought me to version 1.29.2, and resolved this issue.

<!-- gh-comment-id:1052991310 --> @nativeit commented on GitHub (Feb 27, 2022): Evidently `1.21.0-3` is the latest version available in the apt repos for Debian Buster. I found a workaround by manually installing Docker Compose according to the instructions at [https://docs.docker.com/compose/install/](https://docs.docker.com/compose/install/). This brought me to version `1.29.2`, and resolved this issue.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/tacticalrmm#603
No description provided.