一个包含完整AIGC开发环境的Docker镜像,集成了Conda、CUDA、PyTorch、FlashAttention、Node.js和Claude Code等工具。
# 构建镜像
docker build -t aigc-env:latest .
# 使用BuildKit加速构建
DOCKER_BUILDKIT=1 docker build -t aigc-env:latest .
docker run -it --gpus all aigc-env:latest
docker run -it --gpus all \
-v $(pwd)/workspace:/workspace \
-v $(pwd)/data:/workspace/data \
-v $(pwd)/models:/workspace/models \
-p 8888:8888 \
-p 6006:6006 \
-p 7860:7860 \
-p 8000:8000 \
-p 8501:8501 \
--name aigc-dev \
--shm-size=16g \
aigc-env:latest
docker run -it --gpus all \
-v $(pwd)/workspace:/workspace \
-p 8888:8888 \
--shm-size=16g \
aigc-env:latest \
jupyter lab
/workspace/ ├── data/ # 数据文件 ├── models/ # 模型文件 ├── outputs/ # 输出结果 ├── scripts/ # 脚本文件 └── notebooks/ # Jupyter notebooks
nvidia-smi
python -c "import torch; print(f'CUDA: {torch.cuda.is_available()}, Devices: {torch.cuda.device_count()}')"
# JupyterLab
jupyter lab --ip=0.0.0.0 --port=8888 --allow-root
# TensorBoard
tensorboard --logdir=./logs --bind_all
# Gradio应用
python app.py # 默认端口7860
# FastAPI服务
uvicorn main:app --host 0.0.0.0 --port 8000
# 设置API密钥
export ANTHROPIC_API_KEY="your-api-key"
# 启动Claude Code
claude
| 端口 | 服务 |
|---|---|
| 8888 | JupyterLab |
| 6006 | TensorBoard |
| 7860 | Gradio |
| 8000 | FastAPI |
| 8501 | Streamlit |
# CUDA
CUDA_HOME=/usr/local/cuda
LD_LIBRARY_PATH=$CUDA_HOME/lib64
# Conda
CONDA_DIR=/opt/conda
PATH=/opt/conda/bin:$PATH
# 时区
TZ=Asia/Shanghai
pip install your-package
# 或
conda install your-package
conda create -n myenv python=3.11 conda activate myenv
--gpus all 参数运行容器# 安装nvidia-docker2
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update && sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker
使用 --shm-size=16g 或更大的值运行容器。
确保CUDA版本和PyTorch版本兼容,本镜像已预编译FlashAttention。
MIT License
欢迎提交Issue和Pull Request!