Skip to content

devcontainer: pin compose project name to note-arduino-notestation#163

Merged
zfields merged 1 commit intoblues:masterfrom
zakoverflow:fix/devcontainer-compose-project-name
Mar 8, 2026
Merged

devcontainer: pin compose project name to note-arduino-notestation#163
zfields merged 1 commit intoblues:masterfrom
zakoverflow:fix/devcontainer-compose-project-name

Conversation

@zakoverflow
Copy link
Copy Markdown
Contributor

Problem

The devcontainer CLI derives the Docker Compose project name from the directory name of the devcontainer.json file — in this case notestation. Every Blues SDK repo uses the same .devcontainer/notestation/ folder convention, so running two SDK notestation devcontainers simultaneously causes a project name collision.

Concretely, the CLI invokes:

docker-compose --project-name notestation -f .devcontainer/notestation/docker-compose.yaml ... --no-recreate

With --no-recreate, if another SDK's notestation containers are already up under the notestation project, Docker Compose reuses them — attaching to the wrong workspace and image.

Fix

Use the Compose Specification name: field to hard-code a unique project name (note-arduino-notestation) directly in the compose file. The devcontainer CLI respects this and will not override it with the directory-derived name.

The deprecated version: key is also removed, as it is not used by the Compose Specification.

Requirements

Docker Compose v2 (docker compose plugin). Docker Compose v1 (docker-compose) does not support the name: field.

Related

The same fix is being applied to note-posix and should be rolled out to all Blues SDK repos that ship a notestation devcontainer.

The devcontainer CLI derives the Docker Compose project name from the
directory name of the devcontainer.json file -- in this case 'notestation'.
Every Blues SDK repo uses the same folder name, so running two notestation
devcontainers simultaneously causes a project name collision: Docker Compose
sees the existing project and (with --no-recreate) reuses the wrong
containers and workspace mount.

Fix: use the Compose Specification 'name:' field to hard-code a unique
project name ('note-arduino-notestation') that is independent of the
directory. The devcontainer CLI respects this field and will not override
it with the derived name.

Also drops the deprecated 'version:' key in favour of plain Compose
Specification format.

Requires Docker Compose v2 (the 'docker compose' plugin). Docker Compose
v1 ('docker-compose') does not support the 'name:' field.
@zfields zfields merged commit 39dbf47 into blues:master Mar 8, 2026
122 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants