這是本文件的舊版!


在 Alpine 內安裝 Portainer 管理 Container

  • 執行以下語法

    docker volume create portainer_data
    docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v portainer_data:/data \
      portainer/portainer-ce:latest

  • 接下來直接連上

    https://主機IP:9443

    就可以設定 admin 密碼開始使用

  1. 確認安裝好 Portainer IP Exp. 192.168.1.186
  2. 在 Portainer UI 的 User > API Tokens 生成一個 token Exp. ptr_wCxxxxxxxxxxxxxxxxxxxxlZ/7aUvsrCqeGuFYBzVCI=
  3. 進入其他要納入控管的 VM 內, 執行以下的語法

    docker run -d -p 9001:9001 --name portainer_agent --restart=always \
      -v /var/run/docker.sock:/var/run/docker.sock \
      -v /var/lib/docker/volumes:/var/lib/docker/volumes \
      portainer/agent:latest

  4. 將這台 VM 的 docker 加入 Portainer , 執行以下的語法

    #!/bin/bash
    
    PORTAINER_URL="http://192.168.1.186:8000"
    API_TOKEN="ptr_wCxxxxxxxxxxxxxxxxxxxxlZ/7aUvsrCqeGuFYBzVCI="
    MY_HOST=$(hostname)
    MY_IP=$(ip addr show eth0 | grep 'inet ' | awk '{print $2}' | cut -d'/' -f1')
    
    echo "主機名稱: $MY_HOST"
    echo "IP 地址: $MY_IP"
    echo "正在註冊到 Portainer..."
    
    curl -X POST "$PORTAINER_URL/api/endpoints" \
        -H "Authorization: Bearer $API_TOKEN" \
        -H "Content-Type: application/json" \
        -d "{\"Name\":\"host-$MY_HOST\",\"URL\":\"tcp://$MY_IP:9001\",\"EndpointType\":2}" \
        -v

  • tech/portainer.1758193217.txt.gz
  • 上一次變更: 2025/09/18 19:00
  • jonathan