Mobyは、コンテナベースのシステムの構築、実行、オーケストレーションに使えるモジュール式コンポーネントを提供する、Dockerのオープンソースコンテナプロジェクトです。
pranshuparmar/witr
プロセス、ポート、コンテナ、ファイルを起点までたどり、起動したシステムの連鎖を明らかにするCLI/TUIです。
- スター
- 22,720
- フォーク
- 892
- 未解決の Issue
- 2
- 最終コミット
- 昨日
これは何?
witrは、プロセス、待ち受けポート、コンテナ、または開かれたままのファイルについて、「なぜこれが動いているのか?」に答えます。ps、lsof、ss、docker psなどのツールでは実行中のものはわかりますが、どのように起動されたかまではわかりません。witrは親プロセスの連鎖とsystemd、launchd、PM2、cron、SSHセッション、tmux、コンテナランタイムなどのスーパーバイザーをたどり、そのプロセスを動かしているシステムのつながりを示します。
名前、--pid、--port、--file、--containerを指定してwitrを実行すると、親子関係の連鎖、プロセスを起動した元、作業ディレクトリ、gitブランチ、ソケット、rootでの実行やパブリックインターフェースでの待ち受けといった警告を含むレポートを出力します。出力形式は簡潔表示、ツリー表示、詳細表示、JSONから選べます。スクリプトやCI向けに、終了コードも文書化されています。対象を指定せずに実行すると、プロセス、ポート、コンテナ、ファイルロックのタブと、Unixでのシグナル送信およびrenice操作を備えた対話型TUIが開きます。
Goで開発されており、Linux、macOS、Windows、FreeBSD向けの単一バイナリとして配布され、複数のパッケージマネージャーからインストールできます。
主な機能
- 01プロセスの親プロセスの連鎖と、その背後にあるスーパーバイザー(systemd、launchd、PM2、cron、SSH)をたどります。
- 02プロセス名、PID、待ち受けポート、開かれたファイル、コンテナを指定して対象を検索できます。
- 03Docker、Podman、nerdctl、Kubernetes/crictl、Incus、LXC、LXD、FreeBSD jailsに対応します。
- 04プロセス、ポート、コンテナ、ファイルロックのタブを備えた対話型TUIを提供します。
- 05人が読みやすいレポート、簡潔表示、ツリー表示、または終了コードを文書化したJSONを出力します。
ユースケース
- 開発サーバーで「address already in use」エラーが発生したときに、ポートを使用しているプロセスを特定する。
- Linuxサーバーでインシデントが発生した際に、正体不明または停止したプロセスを調査する。
- 実行中のポートをどのComposeサービスまたはコンテナが所有しているか確認する。
- JSON出力を使い、AIコーディングエージェントにポートやプロセスの競合を診断させる。
クイックスタート
- 1
Unixのインストールスクリプトでインストール
README の公式手順に従ってインストール - 2
またはHomebrewでインストール
brew install witr - 3
またはGoのソースからインストール
go install github.com/pranshuparmar/witr/cmd/witr@latest
使う前に知っておきたいこと
- インストール方法はプラットフォームによって異なり、コミュニティ提供のパッケージはGitHubのリリースより更新が遅れる場合があります。
トピック
よくある質問
- witr とは?
- プロセス、ポート、コンテナ、ファイルを起点までたどり、起動したシステムの連鎖を明らかにするCLI/TUIです。 witrは、プロセス、待ち受けポート、コンテナ、または開かれたままのファイルについて、「なぜこれが動いているのか?」に答えます。ps、lsof、ss、docker psなどのツールでは実行中のものはわかりますが、どのように起動されたかまではわかりません。witrは親プロセスの連鎖とsystemd、launchd、PM2、cron、SSHセッション、tmux、コンテナランタイムなどのスーパーバイザーをたどり、そのプロセスを動かしているシステムのつながりを示します。
- witr は無料で使えますか?ライセンスは?
- witr は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- witr は今もメンテナンスされていますか?
- 活発にメンテナンス中。witr の最終コミットは 2026年10月19日 です。
- witr は何に使えますか?
- 開発サーバーで「address already in use」エラーが発生したときに、ポートを使用しているプロセスを特定する。 Linuxサーバーでインシデントが発生した際に、正体不明または停止したプロセスを調査する。 実行中のポートをどのComposeサービスまたはコンテナが所有しているか確認する。 JSON出力を使い、AIコーディングエージェントにポートやプロセスの競合を診断させる。
- witr のインストール方法は?
- Unixのインストールスクリプトでインストール またはHomebrewでインストール: brew install witr またはGoのソースからインストール: go install github.com/pranshuparmar/witr/cmd/witr@latest
- witr はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/pranshuparmar/witr
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Dockerコンテナをライブ統計、ログ、execアクセス付きで表示・操作できるTUI。
CPU、メモリ、ディスク、ネットワーク、プロセス、コンテナを監視するクロスプラットフォーム対応の端末・Webシステムモニター。REST APIとエクスポート機能も搭載。
git pushで自分のサーバーにWebアプリをデプロイ・管理できる、Dockerを利用したセルフホスト型の小さなHeroku。
Textualベースのターミナルダッシュボードで、ローカルマシンやSSH経由のリモートサーバー上にあるcronジョブを作成・編集・一時停止・監視できます。
Trivyは、コンテナ、ファイルシステム、Gitリポジトリ、VMイメージ、Kubernetesを対象に、脆弱性や設定ミス、シークレット、SBOMを検出するオープンソースのセキュリティスキャナーです。