portainer について
Portainer Skillは、Portainer REST APIを通じてDockerインフラを管理するコマンドラインスキルです。Portainer利用者向けに、コンテナやスタックの状態確認、操作、ログ閲覧、再デプロイを提供します。
主な機能
- 01サーバー状態とエンドポイントの確認
- 02コンテナの一覧表示と操作
- 03スタックの確認と管理
- 04Gitからスタックを再デプロイ
- 05コンテナログの閲覧
活用シーン
- 01Docker環境と稼働状況の確認
- 02コンテナの再起動や調査
- 03コード更新後のスタック再デプロイ
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sundial-org/ awesome-openclaw-skills --skill portainerインストール後、Claude Code で/portainerを入力して読み込まれたか確認します。
同梱ファイルportainer.sh
詳細
🐳 Portainer スキル
╔═══════════════════════════════════════════════════════════╗
║ ║
║ 🐳 P O R T A I N E R C O N T R O L C L I 🐳 ║
║ ║
║ Manage Docker containers via Portainer API ║
║ Start, stop, deploy, redeploy ║
║ ║
╚═══════════════════════════════════════════════════════════╝
「Docker コンテナ?僕に任せて。ハスの葉から操作するよ。」 🐸
📖 このスキルでできること
Portainer スキルを使うと、Portainer の REST API を通じて Docker インフラストラクチャを操作できます。ウェブ UI を操作せずに、コンテナ、スタック、デプロイを管理できます。
機能:
- 📊 ステータス — Portainer サーバーのステータスを確認
- 🖥️ エンドポイント — すべての Docker 環境を一覧表示
- 📦 コンテナ — コンテナの一覧表示、起動、停止、再起動
- 📚 スタック — Docker Compose スタックの一覧表示と管理
- 🔄 再デプロイ — Git から取得してスタックを再デプロイ
- 📜 ログ — コンテナのログを表示
⚙️ 要件
| 項目 | 詳細 |
|---|---|
| Portainer | API アクセスが可能なバージョン 2.x |
| ツール | curl、jq |
| 認証 | API アクセストークン |
セットアップ
-
Portainer から API トークンを取得します:
- Portainer のウェブ UI にログインします
- ユーザー名をクリック → My Account
- 「Access tokens」までスクロール → Add access token
- トークンをコピーします(再表示されません!)
-
認証情報を設定します:
# Add to ~/.clawdbot/.env PORTAINER_URL=https://your-portainer-server:9443 PORTAINER_API_KEY=ptr_your_token_here -
準備完了です! 🚀
🛠️ コマンド
status — Portainer サーバーのステータスを確認
./portainer.sh status
出力:
Portainer v2.27.3
endpoints — 環境を一覧表示
./portainer.sh endpoints
出力:
3: portainer (local) - ✓ online
4: production (remote) - ✓ online
containers — コンテナを一覧表示
# List containers on default endpoint (4)
./portainer.sh containers
# List containers on specific endpoint
./portainer.sh containers 3
出力:
steinbergerraum-web-1 running Up 2 days
cora-web-1 running Up 6 weeks
minecraft running Up 6 weeks (healthy)
stacks — すべてのスタックを一覧表示
./portainer.sh stacks
出力:
25: steinbergerraum - ✓ active
33: cora - ✓ active
35: minecraft - ✓ active
4: pulse-website - ✗ inactive
stack-info — スタックの詳細
./portainer.sh stack-info 25
出力:
{
"Id": 25,
"Name": "steinbergerraum",
"Status": 1,
"EndpointId": 4,
"GitConfig": "https://github.com/user/repo",
"UpdateDate": "2026-01-25T08:44:56Z"
}
redeploy — スタックを取得して再デプロイ 🔄
./portainer.sh redeploy 25
出力:
✓ Stack 'steinbergerraum' redeployed successfully
このコマンドでは、次の処理が行われます:
- Git から最新のコードを取得します
- 必要に応じてコンテナを再ビルドします
- スタックを再起動します
start / stop / restart — コンテナを操作
# Start a container
./portainer.sh start steinbergerraum-web-1
# Stop a container
./portainer.sh stop steinbergerraum-web-1
# Restart a container
./portainer.sh restart steinbergerraum-web-1
# Specify endpoint (default: 4)
./portainer.sh restart steinbergerraum-web-1 4
出力:
✓ Container 'steinbergerraum-web-1' restarted
logs — コンテナのログを表示
# Last 100 lines (default)
./portainer.sh logs steinbergerraum-web-1
# Last 50 lines
./portainer.sh logs steinbergerraum-web-1 4 50
🎯 ワークフローの例
🚀 「ウェブサイトを更新してデプロイ」
# After merging PR
./portainer.sh redeploy 25
./portainer.sh logs steinbergerraum-web-1 4 20
🔧 「コンテナをデバッグ」
./portainer.sh containers
./portainer.sh logs cora-web-1
./portainer.sh restart cora-web-1
📊 「システムの概要」
./portainer.sh status
./portainer.sh endpoints
./portainer.sh containers
./portainer.sh stacks
🔧 トラブルシューティング
❌ 「認証が必要です/リポジトリが見つかりません」
問題: Git の認証エラーにより、スタックの再デプロイに失敗します
解決方法: スタックには repositoryGitCredentialID パラメーターが必要です。スクリプトは既存のスタック設定から自動的に読み取ります。
❌ 「コンテナが見つかりません」
問題: コンテナ名が一致しません
解決方法: ./portainer.sh containers で正確な名前を確認してください:
- 完全な名前を指定します:
steinbergerraum-web-1(steinbergerraumではありません) - 名前の大文字と小文字は区別されます
❌ 「PORTAINER_URL and PORTAINER_API_KEY must be set」
問題: 認証情報が設定されていません
解決方法:
# Add to ~/.clawdbot/.env
echo "PORTAINER_URL=https://your-server:9443" >> ~/.clawdbot/.env
echo "PORTAINER_API_KEY=ptr_your_token" >> ~/.clawdbot/.env
🔗 Clawd との統合
"Redeploy the website"
→ ./portainer.sh redeploy 25
"Show me running containers"
→ ./portainer.sh containers
"Restart the Minecraft server"
→ ./portainer.sh restart minecraft
"What stacks do we have?"
→ ./portainer.sh stacks
📜 変更履歴
| バージョン | 日付 | 変更内容 |
|---|---|---|
| 1.0.0 | 2026-01-25 | 初回リリース |
🐸 クレジット
@..@
(----)
( >__< ) "Containers are just fancy lily pads
^^ ^^ for your code to hop around!"
作者: Andy Steinberger(カエルの Clawdbot Owen の協力を得て 🐸)
提供元: Portainer API
所属: Clawdbot スキルコレクション
Clawdbot コミュニティのために 💚 を込めて作成
ケロケロ! 🐸