Self hosted agent does not recognize docker compose installation
Hi,
we are using TC Cloud with self-hosted AWS EC2 Agents (using a Launch Template). Everything seems to be working fine, the agents connect and are able to run builds. However TC refused to execute Docker Compose build steps on these agents and "Docker Compose" is not listed as a build runner for the agents.
Docker Compose is installed on the agent though and the service user has permissions to execute it:
teamcityagent@tc-agent:~$ docker compose version
Docker Compose version v2.14.
My initial guess was that TC used the old name of the plugin "docker-compose". I created a small wrapper script in `/usr/local/bin/docker-compose` that forwards all parameters given to `docker compose`:
teamcityagent@tc-agent:~$ docker-compose version
Docker Compose version v2.14.1
After restarting the agent service, TC still does not recognize Docker Compose however.
How can I make Docker Compose known to the agent?
Edit: I failed to note that Docker itself is recognized just fine. Only Docker Compose is not found.
Please sign in to leave a comment.
Update: My assumption was correct afterall. I installed the old standalone binary of Docker Compose (https://docs.docker.com/compose/install/other/) and after stopping the agent, removing temporary files and restarting the agent, Docker Compose is finally listed as a runner.
So I guess there is a bug in TC, causing Docker Compose to not be recognized when installed as a Docker plugin.
I created an issue: https://youtrack.jetbrains.com/issue/TW-79117/Agent-does-not-recognize-docker-compose-installation