devpod
devpod copied to clipboard
DevPod tries to use docker-compose instead of docker compose to build multiple-service containers
What happened?
If a docker-compose.yml file is specified in the .devcontainer.json file, DevPod will try to build the container using the 1.0 version of Docker Compose, namely using the docker-compose CLI, instead of the new v2 version, docker compose.
What did you expect to happen instead?
DevPod should use the new docker compose v2 CLI.
How can we reproduce the bug? (as minimally and precisely as possible)
My devcontainer.json:
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/docker-existing-docker-compose
{
"name": "Existing Docker Compose (Extend)",
// Update the 'dockerComposeFile' list if you have more compose files or use different names.
// The .devcontainer/docker-compose.yml file contains any overrides you need/want to make.
"dockerComposeFile": [
"../docker-compose.yml",
"docker-compose.yml"
],
// The 'service' property is the name of the service for the container that VS Code should
// use. Update this value and .devcontainer/docker-compose.yml to the real service name.
"service": "server",
// The optional 'workspaceFolder' property is the path VS Code should open by default when
// connected. This is typically a file mount in .devcontainer/docker-compose.yml
"workspaceFolder": "/app"
// Features to add to the dev container. More info: https://containers.dev/features.
// "features": {},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Uncomment the next line if you want start specific services in your Docker Compose config.
// "runServices": [],
// Uncomment the next line if you want to keep your containers running after VS Code shuts down.
// "shutdownAction": "none",
// Uncomment the next line to run commands after the container is created.
// "postCreateCommand": "cat /etc/os-release",
// Configure tool-specific properties.
// "customizations": {},
// Uncomment to connect as an existing user other than the container default. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "devcontainer"
}
Local Environment:
- DevPod Version: [use
devpod version] - Operating System: windows | linux | mac
- ARCH of the OS: AMD64 | ARM64 | i386
DevPod Provider:
- Cloud Provider: none
- Kubernetes Provider: [use
kubectl version] - Local/remote provider: docker | ssh docker
- Custom provider: provide imported
provider.yamlconfig file
Anything else we need to know?
The return error is:
[14:52:41] debug Using docker command 'docker'
[14:52:41] info exec: "docker-compose": executable file not found in $PATH