這是本文件的舊版!
在 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 密碼開始使用
統一使用 Portainer 管理所有 VM 內的 Container
- 確認安裝好 Portainer IP Exp. 192.168.1.186
- 在 Portainer UI 的 User > API Tokens 生成一個 token Exp. ptr_wCxxxxxxxxxxxxxxxxxxxxlZ/7aUvsrCqeGuFYBzVCI=
- 進入其他要納入控管的 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
- 將這台 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