MCPO-Control-Panel

This little container is from  https://github.com/daswer123/mcpo-control-panel . It essentially wraps a GUI around the original MCPO container which, as it turns out, is extremely useful. This container, which had to be locally built, replaces the original MCPO container. There a couple quirks noted below (v0.6.1 at the time of writing).

The main issue is related to the port parameter defined in the environment at container launch. For whatever reason, it didn't matter what value was placed there, it was always reported as invalid. This happened both on AMD64 and ARM64. The fix was to override the container's launch command and simply drop the environment parameter for Port and allow the default value to be used. Below if the code used in Portainer to launch it.

  mcpo-control-panel:
#   command: ["uv", "run", "python", "-m", "mcpo_control_panel", "--host", "${MCPO_MANAGER_HOST}", "--port", "${MCPO_MANAGER_PORT}", "--config-dir", "${MCPO_MANAGER_DATA_DIR}"]
    command: ["uv", "run", "python", "-m", "mcpo_control_panel", "--host", "${MCPO_MANAGER_HOST}", "--config-dir", "${MCPO_MANAGER_DATA_DIR}"]
    deploy:
      placement:
        constraints: 
          - "node.labels.arch   == aarch64"
          - "node.labels.public == true"
          - "node.hostname      != hostb.localdomain"
      mode: replicated
      replicas: 1
    environment:
      - server-type=streamable-http
      - MCPO_MANAGER_HOST=0.0.0.0
      - MCPO_MANAGER_PORT=8083
      - MCPO_MANAGER_DATA_DIR=/data
    image: registry:5000/mcpo-control-panel:0.1.6
    networks:
      - ai_network
      - external_network
    ports:
      - target:    8083
        published: 8084
        protocol:  tcp
    volumes:
      - /docker/mcpo-control-panel/data:/data