# WorkPod 开发环境容器 全栈开发环境,包含 Ubuntu + Python + Go + Rust + Node + MySQL + Redis + Claude Code + OpenClaw ## 快速开始 ```bash # 构建镜像 cd E:/wk-lab/workpod docker build -t workpod:latest . # 启动容器 docker-compose up -d # 查看日志 docker logs -f workpod # 进入容器 docker exec -it workpod bash ``` ## SSH 连接 ```bash ssh root@localhost -p 2222 # 密码: workpod123 ``` ## 端口映射 | 服务 | 宿主机端口 | 容器端口 | |------|-----------|---------| | SSH | 2222 | 22 | | HTTP | 8080 | 80 | | HTTPS | 8443 | 443 | | MySQL | 13306 | 3306 | | Redis | 16379 | 6379 | ## 启动数据库服务 ```bash # MySQL docker exec workpod bash -c "mysqld --user=mysql --datadir=/var/lib/mysql &" # Redis docker exec workpod redis-server --daemonize yes ``` ## 已安装工具 | 工具 | 版本 | 说明 | |------|------|------| | Python | 3.10 | pip, venv | | Node.js | 24.14.0 | npm, pnpm, yarn | | Go | 1.26.1 | | | Rust | 1.94.0 | cargo | | MySQL | 8.0 | 手动启动 | | Redis | 6.0 | 手动启动 | | Claude Code | 2.1.79 | AI 编程工具 | | OpenClaw | 2026.3.13 | AI 网关 | ## 镜像导出/导入 ### 导出镜像 ```bash # 导出为 tar 文件 docker save workpod:latest | gzip > workpod.tar.gz # 或不压缩 docker save workpod:latest -o workpod.tar ``` ### 导入镜像 ```bash # 从 tar.gz 导入 docker load < workpod.tar.gz # 或从 tar 导入 docker load -i workpod.tar ``` ### 迁移到服务器 ```bash # 1. 本机导出 docker save workpod:latest | gzip > workpod.tar.gz # 2. 传输到服务器 scp workpod.tar.gz user@server:/path/ # 3. 服务器导入 ssh user@server docker load < /path/workpod.tar.gz # 4. 复制 docker-compose.yml 到服务器并启动 docker-compose up -d ``` ## 数据持久化 数据存储在 `E:/docker-data/workpod/` 目录: - `mysql/` - MySQL 数据 - `redis/` - Redis 数据 - `workspace/` - 工作空间 ## 配置文件 ``` E:/wk-lab/workpod/ ├── Dockerfile # 镜像构建配置 ├── docker-compose.yml # 容器编排配置 ├── entrypoint.sh # 入口脚本 ├── download-packages.ps1 # 软件包下载脚本 ├── PACKAGES.md # 软件包清单 ├── SPECS.md # 技术规格说明书 └── README.md # 说明文档 ``` ## 常用命令 ```bash # 停止容器 docker-compose down # 重启容器 docker-compose restart # 查看容器状态 docker ps --filter name=workpod # 进入容器执行命令 docker exec -it workpod bash # 查看容器资源使用 docker stats workpod ```