openEuler系统中如何将docker安装在指定目录

在 openEuler 中,Docker 的默认数据存储目录为 /var/lib/docker(程序文件通常安装在系统默认路径,一般无需修改)。若需将 Docker 数据(镜像、容器、卷等)存储到指定目录,可通过修改 Docker 配置实现。以下是具体步骤:

一、准备工作

  1. 安装 Docker(若未安装)

    首先确保已安装 Docker:

    python 复制代码
    # 安装 Docker
    sudo dnf install docker -y
    
    # 暂时不启动服务(后续需修改配置)
  2. 创建目标目录

    选择一个磁盘空间充足的位置创建目录(例如 /data/docker),并设置权限:

    python 复制代码
    # 创建目录
    sudo mkdir -p /data/docker
    
    # 设置权限(确保 Docker 进程可访问)
    sudo chmod 711 /data/docker

二、修改 Docker 数据存储目录

Docker 通过 daemon.json 配置文件指定数据目录,步骤如下:

  1. 创建 / 编辑配置文件

    python 复制代码
    sudo vim /etc/docker/daemon.json
  2. 添加数据目录配置

    在文件中写入以下内容(指定 data-root 为目标目录):

    python 复制代码
    {
      "data-root": "/data/docker"
    }

    保存并退出(:wq)。

  3. 迁移现有数据(若已使用过 Docker)

    若之前已使用 Docker 并有数据(如镜像、容器),需先迁移旧数据到新目录:

    python 复制代码
    # 确保 Docker 处于停止状态
    sudo systemctl stop docker
    
    # 迁移数据(若/var/lib/docker存在)
    sudo cp -a /var/lib/docker/* /data/docker/

三、启动 Docker 并验证

  1. 启动 Docker 服务

    python 复制代码
    # 启动服务
    sudo systemctl start docker
    
    # 设置开机自启
    sudo systemctl enable docker
  2. 验证配置是否生效

    查看 Docker 信息,确认数据目录已更新:

    python 复制代码
    sudo docker info | grep "Docker Root Dir"

    若输出 Docker Root Dir: /data/docker,则表示配置成功。

四、注意事项

  1. SELinux 兼容性

    若 openEuler 启用了 SELinux,需为目标目录设置正确的安全上下文,否则可能出现权限问题:

    python 复制代码
    # 为新目录添加 SELinux 标签(允许 Docker 访问)
    sudo chcon -Rt container_file_t /data/docker

    目录权限

    目标目录需保证 root 用户可读写,避免因权限不足导致 Docker 启动失败。

  2. 配置生效

    修改 daemon.json 后必须重启 Docker 服务才能生效,且无需重新安装 Docker。

通过以上步骤,即可将 Docker 数据存储到指定目录,适用于系统盘空间不足或需要集中管理数据的场景。

相关推荐
火山引擎开发者社区7 分钟前
# 开发者集结!共探 AI Agent 创新应用新可能
人工智能
牛油果子哥q11 分钟前
生产级AI项目上线全流程:Docker容器化、服务编排、监控告警、日志收集、容灾降级、线上运维闭环
人工智能·ai
Pocker_Spades_A13 分钟前
视频不用再一张张截图:ClipSketch AI 把关键画面转成漫画,还能顺手生成文案
人工智能·音视频
小小测试开发13 分钟前
LLM 结构化输出测试:Schema 契约 + 故障注入,让工具调用的 JSON 不再靠重试赌运气
人工智能·json
阿里云大数据AI技术15 分钟前
淘宝直播 AI 分身:基于阿里云 Milvus 的商品知识召回实践
人工智能
猎头南楼17 分钟前
大模型后训练与 Agent 自迭代:两类工程能力的观察
人工智能·深度学习·机器学习
镜像视界(浙江)科技有限公司18 分钟前
《视频孪生之上:二维展示终结,三维空间计算重构城市逻辑》——跨摄像连续表达 × 三角测量厘米级定位 × 动态轨迹建模,构建新一代城市空间
大数据·人工智能·算法·矩阵·音视频·空间计算
你不是我我28 分钟前
【AI 测评】想用自己的声音给视频配音?Index-TTS本地部署这样做
人工智能·音视频
H_oRIZoN_30 分钟前
Linux入门DAY41(51 单片机 串口与通信协议)
linux·运维·单片机
IT_陈寒40 分钟前
Java Stream处理大集合,我的内存怎么就炸了
前端·人工智能·后端