Introduction
ContainerWS (Container Workspace — binary containerws / cws) is a full Linux workspace: a web UI and API on port 9000, Softwares catalog, Cloud Shell, MCP tools for agents, nested Docker, optional Kubernetes management, Homebrew integration, and desktop access (XFCE / noVNC / RDP).
Author: Izet Molla
Run it as a native binary on the host, or as a Docker image with OpenSSH and systemd (or direct mode when systemd is unavailable).
flowchart LR
Client[Browser_or_SSH] --> CWS[cws_UI_API_9000]
CWS --> Softwares
CWS --> DockerEng[Docker_Engine]
CWS --> K8sAPI[Kubernetes]
CWS --> MCP[MCP_/mcp]
CWS --> Desktop[VNC_RDP_noVNC]
What you get
| Area | Capability |
|---|---|
| Softwares | Distro-aware catalog install / uninstall / service control |
| Brew | Homebrew search, install, updates (queues into Softwares) |
| Docker | Environments, containers, images, networks, volumes, stacks |
| Kubernetes | Multi-cluster via kubeconfig secrets in the panel |
| MCP | Agent tools on /mcp (+ optional standalone MCP_PORT) |
| Desktop | XFCE + TigerVNC + noVNC; optional xrdp |
| Users | Panel users synced with Linux accounts |
| Proxy | Host reverse-proxy manager (hosts, SSL, redirects) |
Choose a run mode
| Mode | Best for |
|---|---|
| Native binary / Homebrew | Bare metal or VM; cws --start as a daemon |
| Docker Compose / CLI | Isolated workspace with nested Docker |
| Windows | Docker Desktop + named volumes |
| Linux / WSL | WSL2 with private cgroups |
| Kubernetes | Privileged Deployment (trusted cluster only) |