您的位置:首页 > 游戏 > 手游 > 湖南建设工程信息网官网_国际交流网站平台有哪些_国际军事最新消息今天_谷歌浏览器官网入口

湖南建设工程信息网官网_国际交流网站平台有哪些_国际军事最新消息今天_谷歌浏览器官网入口

2025/4/18 9:21:52 来源:https://blog.csdn.net/sinat_28442665/article/details/145847393  浏览:    关键词:湖南建设工程信息网官网_国际交流网站平台有哪些_国际军事最新消息今天_谷歌浏览器官网入口
湖南建设工程信息网官网_国际交流网站平台有哪些_国际军事最新消息今天_谷歌浏览器官网入口

文章目录

    • 在Linux系统中关闭Docker服务并禁止其开机自启,具体步骤如下:
      • 适用于使用 `systemd` 的系统(如Ubuntu 16.04+/CentOS 7+等)
      • 适用于使用 `SysVinit` 或 `Upstart` 的旧版系统
      • 其他注意事项
      • 示例输出
    • linux 下 一条命令实现 统计各个目录占用空间大小,单位为Mb
    • docker 安装目录文件分析
      • **1. Docker 默认安装目录结构**
      • **2. 分析目录空间占用**
        • **方法 1:快速统计各子目录大小(MB 单位)**
        • **方法 2:精确统计(含小数,单位为 MB)**
      • **3. 关键目录优化建议**
        • **(1) `overlay2/` 目录(镜像与容器层)**
        • **(2) `volumes/` 目录(数据卷)**
        • **(3) `buildkit/` 目录(构建缓存)**
      • **4. 迁移 Docker 存储目录**
      • **5. 注意事项**

在Linux系统中关闭Docker服务并禁止其开机自启,具体步骤如下:

适用于使用 systemd 的系统(如Ubuntu 16.04+/CentOS 7+等)

  1. 停止Docker服务
    执行以下命令立即停止Docker:

    sudo systemctl stop docker
    

    若存在其他关联服务(如docker.socket),也可一并停止:

    sudo systemctl stop docker.socket
    
  2. 禁止开机自启
    禁用Docker服务开机启动:

    sudo systemctl disable docker
    

    同样禁用关联服务(如存在):

    sudo systemctl disable docker.socket
    
  3. 验证操作结果
    • 检查服务状态:

    systemctl status docker
    

    输出中应显示 Active: inactive (dead) 表示已停止,Loaded: disabled 表示已禁用。
    • 确认是否禁用开机启动:

    systemctl is-enabled docker  # 输出应为 "disabled"
    

适用于使用 SysVinitUpstart 的旧版系统

  1. 停止Docker服务

    sudo service docker stop
    
  2. 禁止开机自启
    • SysVinit(如Debian 7/Ubuntu 14.04):

    sudo update-rc.d docker disable
    

    • Upstart(如CentOS 6):

    sudo chkconfig docker off
    

其他注意事项

服务名称确认
如果以上命令报错,可能是服务名称不同。使用以下命令查找:

systemctl list-unit-files | grep docker

彻底卸载Docker(可选)
若需完全移除Docker,可参考官方文档卸载软件包。

示例输出

$ sudo systemctl disable docker
Removed /etc/systemd/system/multi-user.target.wants/docker.service.
$ systemctl is-enabled docker
disabled

linux 下 一条命令实现 统计各个目录占用空间大小,单位为Mb

root@moli:/var/lib/docker# du -sh *104K    buildkit
4.0M    containers
4.0K    engine-id
12M     image
104K    network
13G     overlay2
8.0K    plugins
4.0K    runtimes
4.0K    swarm
4.0K    tmp
176K    volumes

docker 安装目录文件分析

cd /var/lib/dockerroot@moli:/var/lib/docker# ll
total 60
drwx--x--- 12 root root  4096 Feb 24 10:06 ./
drwxr-xr-x 55 root root  4096 Feb 10 11:10 ../
drwx--x--x  3 root root  4096 Feb 10 11:10 buildkit/
drwx--x--- 11 root root  4096 Feb 10 11:27 containers/
-rw-------  1 root root    36 Feb 10 11:10 engine-id
drwx------  3 root root  4096 Feb 10 11:10 image/
drwxr-x---  3 root root  4096 Feb 10 11:10 network/
drwx--x--- 88 root root 12288 Feb 24 10:06 overlay2/
drwx------  3 root root  4096 Feb 10 11:10 plugins/
drwx------  2 root root  4096 Feb 24 10:06 runtimes/
drwx------  2 root root  4096 Feb 10 11:10 swarm/
drwx------  2 root root  4096 Feb 24 10:06 tmp/
drwx-----x  4 root root  4096 Feb 24 10:06 volumes/

以下是对 Docker 安装目录的详细分析指南,涵盖目录结构、空间占用统计及优化建议:


1. Docker 默认安装目录结构

Docker 的主数据目录默认为 /var/lib/docker(Linux 系统),包含以下核心子目录:

目录作用
containers/存储所有容器的运行时数据(每个容器对应一个子目录)
volumes/存储数据卷的持久化数据(每个卷对应一个子目录)
image/存储镜像的元数据(如镜像层、标签信息)
overlay2/默认存储驱动目录,存放镜像和容器的联合文件系统层(如 diffmerged
buildkit/存储 docker build 构建缓存和临时文件
network/管理容器的网络配置(如 bridgemacvlan 网络)
plugins/存储 Docker 插件(如日志驱动、卷驱动)

2. 分析目录空间占用

方法 1:快速统计各子目录大小(MB 单位)
sudo du -m --max-depth=1 /var/lib/docker 2>/dev/null | sort -nr

输出示例

4096    /var/lib/docker
1024    /var/lib/docker/overlay2
512     /var/lib/docker/volumes
256     /var/lib/docker/containers
64      /var/lib/docker/buildkit
方法 2:精确统计(含小数,单位为 MB)
sudo du -k --max-depth=1 /var/lib/docker 2>/dev/null | awk '{ printf "%.2f MB\t%s\n", $1/1024, $2 }' | sort -k1nr

输出示例

4096.00 MB    /var/lib/docker
1024.00 MB    /var/lib/docker/overlay2
512.00 MB     /var/lib/docker/volumes

3. 关键目录优化建议

(1) overlay2/ 目录(镜像与容器层)
  • 清理无用镜像
    docker image prune -a  # 删除所有未被容器引用的镜像
    
  • 清理停止的容器
    docker container prune  # 删除所有已停止的容器
    
(2) volumes/ 目录(数据卷)
  • 删除未使用的数据卷
    docker volume prune
    
(3) buildkit/ 目录(构建缓存)
  • 清理构建缓存
    docker builder prune
    

4. 迁移 Docker 存储目录

若默认目录 /var/lib/docker 空间不足,可迁移到新位置(如 /mnt/docker):

# 1. 停止 Docker 服务
sudo systemctl stop docker# 2. 复制数据到新目录
sudo cp -a /var/lib/docker /mnt/docker# 3. 修改 Docker 配置文件
sudo vim /etc/docker/daemon.json
# 添加以下内容:
{"data-root": "/mnt/docker"
}# 4. 重启 Docker
sudo systemctl start docker

5. 注意事项

  • 权限问题:Docker 目录需 root 权限访问,使用 sudo 执行命令。
  • 谨慎删除:手动删除文件可能导致 Docker 数据损坏!优先使用 docker system prune 清理。
  • 备份数据:迁移或清理前,建议备份重要容器和数据卷。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com