Skip to content

第六章 · 资源准备与 Ubuntu 环境搭建 ​

正式学习前必须完成资源准备和环境检查。

不得跳过。

6.1 学习资源准备 ​

每个学习模块必须准备:

  1. 官方文档。
  2. 核心教程或技术文章。
  3. 必要时提供论文或技术规范。
  4. 可运行的参考代码。
  5. 实验数据。
  6. 测试问题和标准答案。
  7. 环境依赖和版本要求。

每份资料必须说明:

  • 资料名称。
  • 来源链接。
  • 是否免费。
  • 是否需要注册。
  • 需要阅读的具体章节。
  • 预计阅读时间。
  • 阅读目的。
  • 阅读后需要完成什么。

官方资料优先,禁止只罗列大量链接。

涉及当前版本和API参数时,必须核实官方文档。

6.2 Ubuntu系统环境检查 ​

首先检查服务器实际状态。

cat /etc/os-release
uname -a
uname -m

nproc
free -h
df -h

uptime

检查磁盘、内存、CPU和系统版本。

进一步检查:

python3 --version
python3 -m pip --version
git --version

docker --version
docker compose version

systemctl status docker --no-pager

以上命令只用于检查,不得假定所有组件已经安装。

如果组件不可用,先判断是未安装、服务未启动、权限问题还是PATH配置问题。

6.3 环境搭建顺序 ​

按照以下顺序推进:

第一步:确认Ubuntu 24.04和服务器资源。

第二步:检查APT源、DNS和网络连通性。

第三步:检查Docker Engine和Docker Compose。

第四步:检查Git。

第五步:检查Python及虚拟环境。

第六步:创建统一学习项目目录。

第七步:检查外部模型API连通性。

第八步:运行基础FastAPI服务。

第九步:运行基础Docker Compose项目。

第十步:检查项目运行日志和资源占用。

不得在未检查系统现状前直接执行大批量安装或升级命令。

6.4 Python环境 ​

优先使用Python虚拟环境,避免污染系统Python环境。

示例:

sudo apt update

sudo apt install -y \
  python3 \
  python3-venv \
  python3-pip \
  git \
  curl \
  jq \
  build-essential

mkdir -p ~/ai-fde-lab
cd ~/ai-fde-lab

python3 -m venv .venv
source .venv/bin/activate

python -m pip install --upgrade pip

安装后必须检查:

python --version
python -m pip --version

不得在Ubuntu 24.04上为了方便而随意使用系统级pip安装项目依赖。

6.5 Docker环境 ​

先检查现有Docker安装情况。

如果未安装,优先参考Docker官方Ubuntu安装文档:

https://docs.docker.com/engine/install/ubuntu/

安装方案必须区分:

  • Docker Engine。
  • Docker Compose插件。
  • 用户权限。
  • Docker服务状态。
  • 镜像仓库访问问题。

不能同时采用多个互相冲突的安装方式。

验证:

docker version
docker compose version
docker run --rm hello-world

如果遇到权限错误,先检查用户组和Docker Socket权限,不得直接建议长期使用不安全的权限配置。

6.6 统一项目目录 ​

建议:

~/ai-fde-lab/
├── README.md
├── docs/
│   ├── learning-plan.md
│   ├── environment-report.md
│   ├── learning-notes/
│   └── delivery/
├── projects/
│   ├── llm-api-demo/
│   ├── rag-assistant/
│   └── enterprise-ai-assistant/
├── datasets/
│   ├── documents/
│   └── evaluation/
├── experiments/
├── scripts/
├── tests/
├── logs/
└── progress/
    ├── learner-profile.md
    ├── progress.md
    ├── issue-tracker.md
    └── latest-state.md

目录可以根据项目需要调整,但必须保持清晰、可维护。

6.7 环境验证 ​

必须完成:

  • Python可以运行。
  • 虚拟环境可以创建。
  • 项目依赖可以安装。
  • Git可以提交代码。
  • Docker可以启动容器。
  • Docker Compose可以运行多容器项目。
  • 本地服务可以正常访问。
  • 日志能够正常查看。
  • 可以运行基础FastAPI服务。
  • 可以执行基础自动化测试。

每项记录检查命令、实际结果、预期结果、是否通过和失败原因。

6.8 4C4G资源约束测试 ​

在正式部署项目之前,必须建立基础资源监测方法。

使用:

free -h
df -h
docker stats --no-stream
ps aux --sort=-%mem | head

每次增加容器或数据库服务时,记录:

  • 启动前内存。
  • 启动后内存。
  • CPU占用。
  • 容器内存限制。
  • 服务响应情况。
  • 是否出现OOM或异常退出。

Docker Compose中应根据实际测试为服务配置合理的资源限制。

不得为了追求完整架构而在4GB服务器上同时启动大量服务。

如果资源不足,应优先采用:

  • 分阶段启动服务。
  • 关闭非必要容器。
  • 降低并发。
  • 减少数据库连接数。
  • 使用外部Embedding API。
  • 将非必要实验放在本地临时执行。
  • 将重型服务改为按需启动。

不允许将理论资源估算当作实际测试结果。