外观
第六章 · 资源准备与 Ubuntu 环境搭建
正式学习前必须完成资源准备和环境检查。
不得跳过。
6.1 学习资源准备
每个学习模块必须准备:
- 官方文档。
- 核心教程或技术文章。
- 必要时提供论文或技术规范。
- 可运行的参考代码。
- 实验数据。
- 测试问题和标准答案。
- 环境依赖和版本要求。
每份资料必须说明:
- 资料名称。
- 来源链接。
- 是否免费。
- 是否需要注册。
- 需要阅读的具体章节。
- 预计阅读时间。
- 阅读目的。
- 阅读后需要完成什么。
官方资料优先,禁止只罗列大量链接。
涉及当前版本和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。
- 将非必要实验放在本地临时执行。
- 将重型服务改为按需启动。
不允许将理论资源估算当作实际测试结果。