Podman Status Monitor

A Visual Studio Code extension that monitors and manages Podman machines directly from your editor, eliminating context switching and boosting productivity.
✨ Features
🔍 Real-Time Machine Status
Monitor your Podman machine status at a glance with live updates in the VS Code status bar:
- Running: 🟢 Podman: Running (1/1) machine(s)
- Stopped: 🔴 Podman: Stopped (0/2) machine(s)
- Hover over the status bar to see detailed information about each machine:
- ▶ Running podman-machine1
- ⏹ Stopped podman-machine2
- ▶ Running podman-machine3
🚀 Quick Machine Management
- Start Machines: Start stopped machines directly from VS Code with a single click
- Multi-Machine Support: Select specific machines to start or start all at once
- Create Machines: Initialize new Podman machines without leaving your editor
- Status Refresh: Right-click the status bar to manually refresh machine status
🛠️ Smart Detection
- Automatically detects Podman installation
- Prompts with installation links if Podman is not found
- Identifies missing machines and offers quick creation options
- Detects when system reboot is required for machine startup
- Windows (with WSL2 or Hyper-V)
- macOS
- Linux (status monitoring)
📦 Installation
From VS Code Marketplace
- Open VS Code
- Press
Ctrl+Shift+X (Windows/Linux) or Cmd+Shift+X (macOS) to open Extensions
- Search for "Podman Status Monitor"
- Click Install
Manual Installation (VSIX)
- Download the
.vsix file from the Releases page
- Open VS Code Extensions view (
Ctrl+Shift+X)
- Click the
... menu at the top-right
- Select Install from VSIX...
- Choose the downloaded
.vsix file
🚀 Getting Started
- Install the extension following the instructions above
- The extension activates automatically when VS Code starts
- Check the status bar (bottom-left) for Podman machine status
- Hover over the status to see machine details
- Click the status to start stopped machines or create new ones
- Right-click to refresh the status
First-Time Setup
If Podman is not installed, the extension will:
- Display a notification with installation instructions
- Provide direct links to official Podman documentation
- Guide you through machine creation once Podman is installed
📋 Requirements
- Podman 4.0 or higher
- VS Code 1.95.0 or higher
- Operating System:
- Windows 10/11 with WSL2 or Hyper-V
- macOS 11.0 (Big Sur) or higher
- Linux (any distribution with Podman support)
🎯 Usage Examples
Starting a Stopped Machine
- When machines are stopped, a notification appears: "Some Podman machines are not running. Would you like to start them?"
- Click Start Machines
- Select the machine(s) you want to start
- Monitor progress in the notification area
Creating a New Machine
- If no machines exist, click the status bar notification
- Click Create Machine
- Enter a machine name (or press Enter for default:
podman-machine-default)
- Wait for initialization to complete
- Optionally start the machine immediately
Multi-Machine Management
- View all machine statuses by hovering over the status bar
- Start multiple machines simultaneously by selecting them from the quick pick menu
- Individual machine status is displayed in a formatted table
⚙️ Extension Settings
This extension currently works out-of-the-box with no configuration required. Future versions will include:
- Custom status bar position
- Auto-start preferences
- Notification frequency settings
- Machine naming conventions
🐛 Known Issues
This item is in the TODO list to automate the fix.
For a complete list, see Issues.
🤝 Contributing
Contributions are welcome! Here's how you can help:
- Report Bugs: Open an issue
- Request Features: Submit a feature request
- Submit PRs: See CONTRIBUTING.md for guidelines
Development Setup
# Clone the repository
git clone https://github.com/koushikkarmakar99/podman_status_monitor.git
# Install dependencies
cd podman_status_monitor
npm install
npm install --save-dev @types/vscode@^1.95.0
# Compile and watch
npm run compile
# Press F5 in VS Code to start debugging
📝 Changelog
See CHANGELOG.md for a list of changes in each version.
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Podman - The amazing container engine
- VS Code Extension API - Microsoft's excellent extension framework
- All contributors who help improve this extension
📞 Support
Made with ❤️ for the containerization community
⬆ Back to top