Skip to main content

rundeck-mcp-docker-build

Build the Rundeck MCP Docker image. Compiles TypeScript in a multi-stage build and produces a production-ready image that downloads Rundeck docs at container startup. Use after changes to src/, Dockerfile, or docker-entrypoint.sh.

インストールへ移動

ソース情報

リポジトリ
rundeck/mcp
ソースの最終更新活動
2026年8月17日 22:39
検出された SKILL.md の言語
英語
スター
0
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
rundeck-mcp-docker-build
description
Build the Rundeck MCP Docker image. Compiles TypeScript in a multi-stage build and produces a production-ready image that downloads Rundeck docs at container startup. Use after changes to src/, Dockerfile, or docker-entrypoint.sh.
user-invocable
true
allowed-tools
["Bash","TaskCreate","TaskUpdate"]
# Rundeck MCP — Docker Build Skill **Purpose:** Build the `rundeck-mcp` Docker image from the local source. **When to use:** - After changes to `src/`, `Dockerfile`, or `docker-entrypoint.sh` - To produce an image ready for local testing or publishing **When NOT to use:** - Just want to run the server locally → use `/rundeck-mcp-rebuild` instead (faster, no Docker) --- ## Steps ### Before Starting: Create Task List ``` TaskCreate "Verify environment" TaskCreate "Build Docker image" TaskCreate "Verify image" TaskCreate "Run Docker smoke tests" ``` Store all returned task IDs. --- ### Step 1: Verify Prerequisites ``` TaskUpdate taskId=<verify_id> status="in_progress" ``` ```bash ls Dockerfile docker-entrypoint.sh 2>/dev/null ``` If either file is missing, stop: > "Dockerfile or docker-entrypoint.sh not found. Both ship on `main` — make sure your branch is up to date with `main`." Check Docker is available: ```bash docker info --format '{{.ServerVersion}}' 2>/dev/null || echo "unavailable" ``` If Docker is unavailable, stop: > "Docker daemon is not running. Start Docker Desktop and try again." ``` TaskUpdate taskId=<verify_id> status="completed" ``` --- ### Step 2: Build the Image ``` TaskUpdate taskId=<build_id> status="in_progress" ``` Build with the same tag CircleCI publishes (`rundeck/mcp-ci`) plus today's date as a secondary tag. `.npmrc` points npm at a private Cloudsmith mirror, so `CLOUDSMITH_NPM_TOKEN` must be set in your shell and forwarded in as a build secret (not a build-arg, to avoid leaking it into the image's layer history): ```bash docker build --secret id=cloudsmith_token,env=CLOUDSMITH_NPM_TOKEN \ -t rundeck/mcp-ci:latest -t rundeck/mcp-ci:$(date +%Y%m%d) . 2>&1 ``` If `CLOUDSMITH_NPM_TOKEN` isn't set in the environment, the build will fail with an `npm ci` 401 error. If the build fails, show the full output and stop: > "Docker build failed — see errors above." ``` TaskUpdate taskId=<build_id> status="completed" ``` --- ### Step 3: Verify Image ``` TaskUpdate taskId=<verify_image_id> status="in_progress" ``` ```bash docker image inspect rundeck/mcp-ci:latest --format 'Size: {{.Size}} bytes | Created: {{.Created}}' ``` Print usage instructions: ``` TaskUpdate taskId=<verify_image_id> status="completed" ``` --- ### Step 4: Run Docker Smoke Tests ``` TaskUpdate taskId=<smoke_id> status="in_progress" ``` Verifies the entrypoint's docs fetch, the resulting `/app/docs` layout (including that the media-heavy `.vuepress/public` tree stays excluded except for the carved-out `rundeck-api.yml` OpenAPI spec `api_call` validates against), the `RUNDECK_DOCS_PATH` bypass, the restart/skip-fetch path, and that the server answers a real MCP `initialize` request: ```bash sh ci/docker-smoke-test.sh rundeck/mcp-ci:latest ``` If any check reports `FAIL`, show the full output and stop: > "Docker smoke tests failed — see output above. Do not publish this image." ``` TaskUpdate taskId=<smoke_id> status="completed" ``` --- ### Report ``` Docker image built successfully. Image: rundeck/mcp-ci:latest Smoke tests: PASSED Add to .mcp.json (stdio transport — docs downloaded on first start): "rundeck-mcp": { "command": "docker", "args": ["run", "-i", "--rm", "-e", "RUNDECK_URL=https://your-rundeck.example.com", "-e", "RUNDECK_TOKEN=your-token", "rundeck/mcp-ci:latest"] } ```
GitHubで見る