feat(excalidraw-mcp): add excalidraw-mcp image - #10
Merged
Conversation
Upstream (excalidraw/excalidraw-mcp) publishes neither a container image nor an npm package, so the image builds from the git tag. Moved here from home-ops's docker/ tree, which is being retired in favour of this repo. Adapted to this repo's conventions on the way in: base digest-pinned, the upstream version carries a Renovate annotation, and the runtime user is a dedicated uid/gid 1001 rather than the base image's node user. Verified locally on arm64: hadolint clean, the image runs as 1001, and the metadata test completes an MCP initialize handshake against the running server. Signed-off-by: swibrow <15628653+swibrow@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Moves the excalidraw-mcp image out of home-ops's
docker/tree and into this repo, so it publishes asghcr.io/cloudsnacks/excalidraw-mcp.Upstream (
excalidraw/excalidraw-mcp) publishes neither a container image nor an npm package, so the build clones the git tag.npm ciis not usable at v0.3.2 - the shipped lockfile is out of sync with its package.json.Adapted to this repo's conventions on the way in:
node:24-bookworm-slim), both stagesEXCALIDRAW_MCP_VERSIONcarries a Renovate annotation;metadata.yamlversiondrops the upstreamvprefix so CI's semver tags stay validnode(uid 1000)metadata.yamltest backgrounds the server and completes an MCPinitializehandshake, which is the only check that proves the bundle loads and the listener comes upVerified locally on arm64 with Apple
container: build succeeds, hadolint is clean against.hadolint.yaml,id -uis 1001, and the metadata test exits 0 with aserverInforesponse.Follow-up: home-ops's
MCPServerwill point atghcr.io/cloudsnacks/excalidraw-mcp:0.3.2, which only resolves once this merges and CI publishes.https://claude.ai/code/session_01RLU9aha2fJ7f1gYHcofLsZ