WorkPod - 容器化开发环境
基于 Alpine 3.23 的轻量级开发容器,支持多项目隔离部署。
是什么
WorkPod 是一套 Docker 容器化的全栈开发环境,每个项目运行在独立容器中,通过 Web 终端(ttyd)或 SSH 访问。
核心特性
| 特性 | 说明 |
|---|---|
| 轻量镜像 | ~436MB(Alpine 多阶段构建) |
| 开箱即用 | Node.js 24 + Claude Code + ttyd + tmux |
| 工具外挂 | Rust/Go/Python 安装到 /root,自动检测 PATH |
| 项目隔离 | 每个项目独立容器、独立端口、独立网络 |
| 会话管理 | tmux session 支持 URL 参数 / 交互菜单 |
快速开始
# 1. 构建基础镜像
docker compose -f instances/base/docker-compose.yml build
# 2. 启动基础实例
docker compose -f instances/base/docker-compose.yml up -d
# 3. 打开 Web 终端
# http://localhost:7681 (用户: jc, 密码: 1234567)
# 或 SSH 连接
# ssh root@localhost -p 2222 (密码: workpod123)
目录结构
workpod/
├── Dockerfile # 基础镜像构建
├── entrypoint.sh # 统一入口脚本
├── ttyd-session.sh # tmux 会话管理
├── instances/ # ★ 实例配置(每个项目一个目录)
│ ├── registry.yaml # 全局实例注册表
│ ├── base/ # 基础实例
│ ├── flux/ # Flux 项目实例
│ └── .template/ # 新建实例模板
├── docs/ # 文档体系
└── data/ # 运行时数据
文档索引
| 文档 | 位置 | 说明 |
|---|---|---|
| 实例管理指南 | instances/README.md |
端口规则、新建流程 |
| 实例注册表 | instances/registry.yaml |
所有实例的端口/状态 |
| 端口分配规则 | docs/00-规范/端口分配规则.md |
详细端口规划 |
| 实例创建流程 | docs/00-规范/实例创建流程.md |
步骤教程 |
| 架构设计 | docs/01-架构/ |
C4 图 + 组件关系 |
| 问题记录 | docs/02-技术文档/ISSUES.md |
历史问题与解决方案 |
| 部署指南 | docs/03-运维/ |
本机 + 测试服部署 |
| 测试服实例 | docs/03-运维/测试服实例.md |
远程实例配置 |
| 审核报告 | docs/04-审核/ |
安全/架构/Docker/Shell 审核 |
相关链接
- 基础镜像:
workpod-alpine:latest(基于 alpine:3.23) - AI 工具:Claude Code (@anthropic-ai/claude-code)
- Web 终端:ttyd (Alpine apk)
- 会话管理:tmux + ttyd-session.sh