codeuh's work in progress Streamlit app that uses the Podman PyPi package for managing containers and images using Podman.
I've tested it running on a RHEL-9 WSL2 distro and a Fedora 41 Workstation VM so far.
You can determine the path to your socket on a Linux machine with the following command:
podman info | grep sock
Expected output will look like this. If it's different then the run command, update the run command so the host podman socket mapping matches your output.
path: /run/user/1000/podman/podman.sock
Here's the run command!
podman run -d --name podman-streamlit \
-p 8501:8501 \
-v /run/user/1000/podman/podman.sock:/run/user/1000/podman/podman.sock \
ghcr.io/codeuh/podman-streamlit:main
- Main Page
- Containers Tab
- Inspect Container(s) JSON
- Show Localhost Links to Container(s) Host Ports
- Show Container(s) Logs with Syntax Coloring
- Generate Quadlet for Container(s) via Podlet
- Execute Commands in Container(s)
- Start Container(s)
- Pause Container(s)
- Stop Container(s)
- Remove Container(s)
- Prune Containers
- Refresh Containers
- Pods Tab
- Inspect Pod(s) JSON
- Start Pod(s)
- Pause Pod(s)
- Stop Pod(s)
- Remove Pod(s)
- Prune Pods
- Refresh Pods
- Images Tab
- Inspect Image(s) JSON
- Pull Image(s)
- Remove Image(s)
- Prune Images
- Refresh Images
- Volumes Tab
- Inspect Volume(s) JSON
- Remove Volume(s)
- Prune Volumes
- Refresh Volumes
- Networks Tab
- Inspect Network(s) JSON
- Remove Network(s)
- Refresh Networks
- Secrets Tab
- Create Secret
- Delete Secret
- List Secret Names & IDs
- Resource Usage Section
- Containers Disk Usage Chart
- Images Disk Usage Chart
- Volumes Disk Usage Chart
- Volumes with Reclaimable Space Chart
- Containers Tab
- Container Stats Page
- Options
- Container Selector
- Chart Layout Selector
- Chart Data Retention Period Selector
- CPU Chart
- Memory Chart
- Network Traffic Chart
- Options
- The Container Stats page is using a while loop which isn't reccomended in streamlit. There's a bug in the code where if you navigate away from the stats page, then back to it, a Bad message format error occurs. You can refresh the page to get it working again.
- I had to disable SELinux by running the below command when I was testing it on Fedora 41 Workstation. Might there be a better way to handle this? I'm no SELinux expert.
sudo setenforce 0