Skip to content

Instantly share code, notes, and snippets.

@meisa233
Last active September 15, 2025 02:24
Show Gist options
  • Save meisa233/9d6dd538e14bcb601588c0ec12cef396 to your computer and use it in GitHub Desktop.
Save meisa233/9d6dd538e14bcb601588c0ec12cef396 to your computer and use it in GitHub Desktop.

1.修改配置文件,增加docker下载镜像地址

注意这里的data-root,它显示的是docker文件的存放地址

# 编辑配置文件,添加 data-root 配置
sudo cat > /etc/docker/daemon.json << 'EOF'
{
  "data-root": "/data/docker",
  "registry-mirrors": [
    "https://docker.1panelproxy.com",
    "https://2m11665s.mirror.aliyuncs.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://hub-mirror.c.163.com",
    "https://registry.docker-cn.com"
  ],
  "insecure-registries": [
    "registry.me:5000",
    "decs.com"
  ],
  "exec-opts": [
    "native.cgroupdriver=systemd"
  ],
  "storage-driver": "overlay2",
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  }
}
EOF

2.迁移Docker数据

# 停止 Docker 服务
sudo systemctl stop docker

# 创建新的数据目录
sudo mkdir -p /data/docker

# 如果要保留现有数据,复制到新位置
# 注意:这可能需要较长时间,取决于数据量
sudo rsync -avP /var/lib/docker/ /data/docker/

# 或者如果不需要保留现有数据,直接创建空目录即可
# sudo mkdir -p /data/docker

3.配置代理

your-proxy一般为127.0.0.1 port看你的代理的端口号是什么,我现在用的7890

# 配置 Docker 代理
sudo mkdir -p /etc/systemd/system/docker.service.d

sudo cat > /etc/systemd/system/docker.service.d/proxy.conf << 'EOF'
[Service]
Environment="HTTP_PROXY=http://your-proxy:port"
Environment="HTTPS_PROXY=http://your-proxy:port"
Environment="NO_PROXY=localhost,127.0.0.1"
EOF

# 重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker

4.重启docker服务

# 重新加载 systemd 配置
sudo systemctl daemon-reload

# 启动 Docker
sudo systemctl start docker

# 检查 Docker 是否正常运行
sudo systemctl status docker

# 验证新的数据目录是否生效
docker info | grep "Docker Root Dir"
# 应该显示: Docker Root Dir: /data/docker

5.安装NVIDIA Container Toolkit

# 1. 添加 NVIDIA 仓库
distribution=rhel8.6  # OpenEuler 兼容 RHEL
curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.repo | \
  sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo

# 2. 安装 nvidia-container-toolkit
sudo yum clean all
sudo yum install -y nvidia-container-toolkit

# 3. 配置 Docker 运行时
sudo nvidia-ctk runtime configure --runtime=docker

# 4. 重启 Docker
sudo systemctl restart docker

# 5. 验证安装
docker run --rm --runtime=nvidia --gpus all nvidia/cuda:12.2.0-base-ubuntu20.04 nvidia-smi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment