Introduce a Helm-chart-like template system for MCP servers. Templates are YAML files in templates/ that get seeded into the DB on startup. Users can browse them with `mcpctl get templates`, inspect with `mcpctl describe template`, and instantiate with `mcpctl create server --from-template=`. Also adds Portainer deployment scripts, mcplocal systemd service, Streamable HTTP MCP endpoint, and RPM packaging for mcpctl-local. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
33 lines
899 B
Bash
Executable File
33 lines
899 B
Bash
Executable File
#!/bin/bash
|
|
# Build mcpd Docker image and push to Gitea container registry
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
|
|
cd "$PROJECT_ROOT"
|
|
|
|
# Load .env for GITEA_TOKEN
|
|
if [ -f .env ]; then
|
|
set -a; source .env; set +a
|
|
fi
|
|
|
|
# Push directly to internal address (external proxy has body size limit)
|
|
REGISTRY="10.0.0.194:3012"
|
|
IMAGE="mcpd"
|
|
TAG="${1:-latest}"
|
|
|
|
echo "==> Building mcpd image..."
|
|
podman build -t "$IMAGE:$TAG" -f deploy/Dockerfile.mcpd .
|
|
|
|
echo "==> Tagging as $REGISTRY/michal/$IMAGE:$TAG..."
|
|
podman tag "$IMAGE:$TAG" "$REGISTRY/michal/$IMAGE:$TAG"
|
|
|
|
echo "==> Logging in to $REGISTRY..."
|
|
podman login --tls-verify=false -u michal -p "$GITEA_TOKEN" "$REGISTRY"
|
|
|
|
echo "==> Pushing to $REGISTRY/michal/$IMAGE:$TAG..."
|
|
podman push --tls-verify=false "$REGISTRY/michal/$IMAGE:$TAG"
|
|
|
|
echo "==> Done!"
|
|
echo " Image: $REGISTRY/michal/$IMAGE:$TAG"
|