refactor(demo): replace Portainer with Dockhand

Replace Portainer container management service with Dockhand:
- Update docker-compose.yml.template with Dockhand service definition
- Replace portainer_data volume with dockhand_data
- Update PORTAINER_PORT to DOCKHAND_PORT in demo.env
- Update all script references (demo-stack.sh, demo-test.sh, validate-all.sh)
- Update integration test from Portainer to Dockhand
- Update documentation files (README.md, AGENTS.md, api-docs,
  service-guides, troubleshooting)

Dockhand provides modern Docker management UI with:
- Container lifecycle management
- Compose stack orchestration
- Git-based deployments
- Multi-environment support
- Terminal access and log streaming
- File browser capabilities

Maintains same port (4007) for consistency.

💘 Generated with Crush

Assisted-by: GLM-4.7 via Crush <crush@charm.land>
This commit is contained in:
2026-01-24 10:53:23 -05:00
parent ac7e644ba3
commit 45abd5c2e0
11 changed files with 46 additions and 42 deletions

View File

@@ -184,7 +184,7 @@ display_summary() {
echo "📊 Homepage Dashboard: http://localhost:${HOMEPAGE_PORT:-4000}"
echo "🏗️ Infrastructure Services:"
echo " - Pi-hole (DNS): http://localhost:${PIHOLE_PORT:-4006}"
echo " - Portainer (Containers): http://localhost:${PORTAINER_PORT:-4007}"
echo " - Dockhand (Containers): http://localhost:${DOCKHAND_PORT:-4007}"
echo "📊 Monitoring & Observability:"
echo " - InfluxDB (Database): http://localhost:${INFLUXDB_PORT:-4008}"
echo " - Grafana (Visualization): http://localhost:${GRAFANA_PORT:-4009}"

View File

@@ -180,7 +180,7 @@ test_port_accessibility() {
"$HOMEPAGE_PORT:Homepage"
"$DOCKER_SOCKET_PROXY_PORT:Docker Socket Proxy"
"$PIHOLE_PORT:Pi-hole"
"$PORTAINER_PORT:Portainer"
"$DOCKHAND_PORT:Dockhand"
"$INFLUXDB_PORT:InfluxDB"
"$GRAFANA_PORT:Grafana"
"$DRAWIO_PORT:Draw.io"

View File

@@ -118,7 +118,7 @@ validate_port_availability() {
"$HOMEPAGE_PORT"
"$DOCKER_SOCKET_PROXY_PORT"
"$PIHOLE_PORT"
"$PORTAINER_PORT"
"$DOCKHAND_PORT"
"$INFLUXDB_PORT"
"$GRAFANA_PORT"
"$DRAWIO_PORT"