新增: WorkPod 全栈开发环境容器
- Dockerfile: Ubuntu + Python + Node + Go + Rust + MySQL + Redis - 离线安装包下载脚本(国内镜像源) - 技术规格说明书 SPECS.md - 代码审查报告 REVIEW-REPORT.md
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
#!/bin/bash
|
||||
# Dev Box 软件包下载脚本
|
||||
# 使用国内镜像源,加速下载
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
PACKAGES_DIR="$SCRIPT_DIR/packages"
|
||||
|
||||
mkdir -p "$PACKAGES_DIR"
|
||||
cd "$PACKAGES_DIR"
|
||||
|
||||
echo "========================================"
|
||||
echo " Dev Box 软件包下载(国内镜像)"
|
||||
echo "========================================"
|
||||
echo ""
|
||||
|
||||
# ============ Node.js ============
|
||||
NODE_VERSION="v24.14.0"
|
||||
NODE_FILE="node-${NODE_VERSION}-linux-x64.tar.xz"
|
||||
|
||||
echo "[1/5] Node.js ${NODE_VERSION}..."
|
||||
if [ ! -f "$NODE_FILE" ]; then
|
||||
# 淘宝镜像
|
||||
curl -L -o "$NODE_FILE" "https://npmmirror.com/mirrors/node/${NODE_VERSION}/${NODE_FILE}"
|
||||
echo " ✓ 下载完成"
|
||||
else
|
||||
echo " - 已存在,跳过"
|
||||
fi
|
||||
|
||||
# ============ Go ============
|
||||
GO_VERSION="1.26.1"
|
||||
GO_FILE="go${GO_VERSION}.linux-amd64.tar.gz"
|
||||
|
||||
echo "[2/5] Go ${GO_VERSION}..."
|
||||
if [ ! -f "$GO_FILE" ]; then
|
||||
# Go 官方中国镜像
|
||||
curl -L -o "$GO_FILE" "https://golang.google.cn/dl/${GO_FILE}"
|
||||
echo " ✓ 下载完成"
|
||||
else
|
||||
echo " - 已存在,跳过"
|
||||
fi
|
||||
|
||||
# ============ Rust ============
|
||||
RUST_VERSION="1.94.0"
|
||||
RUST_FILE="rust-${RUST_VERSION}-x86_64-unknown-linux-gnu.tar.xz"
|
||||
|
||||
echo "[3/5] Rust ${RUST_VERSION}..."
|
||||
if [ ! -f "$RUST_FILE" ]; then
|
||||
# 中科大镜像
|
||||
curl -L -o "$RUST_FILE" "https://mirrors.ustc.edu.cn/rust-static/dist/${RUST_FILE}"
|
||||
echo " ✓ 下载完成"
|
||||
else
|
||||
echo " - 已存在,跳过"
|
||||
fi
|
||||
|
||||
# ============ Claude Code ============
|
||||
echo "[4/5] Claude Code..."
|
||||
if [ ! -f "claude-code-2.1.78.tgz" ]; then
|
||||
# 需要从 npm 下载,设置淘宝镜像
|
||||
npm pack @anthropic-ai/claude-code --registry=https://registry.npmmirror.com 2>/dev/null || \
|
||||
npm pack @anthropic-ai/claude-code@2.1.78 --registry=https://registry.npmmirror.com
|
||||
# 重命名为固定名称
|
||||
for f in anthropic-ai-claude-code-*.tgz; do
|
||||
[ -f "$f" ] && mv "$f" "claude-code-2.1.78.tgz"
|
||||
done
|
||||
echo " ✓ 下载完成"
|
||||
else
|
||||
echo " - 已存在,跳过"
|
||||
fi
|
||||
|
||||
# ============ OpenClaw ============
|
||||
echo "[5/5] OpenClaw..."
|
||||
if [ ! -f "openclaw-2026.3.13.tgz" ]; then
|
||||
# 从 npm 下载
|
||||
npm pack openclaw@2026.3.13 --registry=https://registry.npmmirror.com 2>/dev/null || \
|
||||
npm pack openclaw --registry=https://registry.npmmirror.com
|
||||
# 重命名为固定名称
|
||||
for f in openclaw-*.tgz; do
|
||||
[ -f "$f" ] && mv "$f" "openclaw-2026.3.13.tgz"
|
||||
done
|
||||
echo " ✓ 下载完成"
|
||||
else
|
||||
echo " - 已存在,跳过"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "========================================"
|
||||
echo " 下载完成"
|
||||
echo "========================================"
|
||||
echo ""
|
||||
echo "文件列表:"
|
||||
ls -lh "$PACKAGES_DIR"/*.tar.* "$PACKAGES_DIR"/*.tgz 2>/dev/null || true
|
||||
echo ""
|
||||
echo "总大小:"
|
||||
du -sh "$PACKAGES_DIR"
|
||||
Reference in New Issue
Block a user