Docker学习笔记-docker安装、删除

一、在centOS 7中docker的默认安装目录

# Docker 主配置文件目录
ls /etc/docker# Docker 数据目录(镜像、容器、卷等)
ls /var/lib/docker# Docker 可执行文件路径
which docker  # 输出类似 /usr/bin/docker

二、docker文件目录说明

目录/文件用途
/etc/docker/daemon.jsonDocker 守护进程配置文件
/var/lib/dockerDocker 数据存储(镜像、容器、网络等)
/usr/bin/dockerDocker 客户端命令行工具
/run/docker.sockDocker 守护进程通信的 Unix 套接字

三、daemon.json文件介绍

daemon.json 是 Docker 守护进程(dockerd)的核心配置文件,用于全局设置 Docker 的运行时参数。通过该文件,您可以自定义 Docker 的默认行为,例如镜像加速、日志驱动、存储配置、网络设置等。

1、镜像仓库配置
指定私有镜像仓库地址或配置镜像加速(如阿里云、Docker 官方镜像源):

{"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}

2、日志驱动与配置
定义容器日志的存储驱动(如 json-file、syslog)及日志轮换策略:

{"log-driver": "json-file","log-opts": {"max-size": "10m","max-file": "3"}
}

3、存储驱动设置
选择容器和镜像的存储驱动(如 overlay2、devicemapper):

{"storage-driver": "overlay2"
}

4、网络配置
定义默认的容器网络模式或 DNS 设置:
 

{"dns": ["8.8.8.8", "8.8.4.4"],"default-address-pools": [{"base": "10.10.0.0/16", "size": 24}]
}

5、安全策略
配置用户组权限或启用 TLS 加密通信:

{"userns-remap": "default","tls": true,"tlscacert": "/etc/docker/ca.pem"
}
  • 国内镜像加速:配置 registry-mirrors 提升拉取镜像速度。
  • 日志管理:限制容器日志大小,防止磁盘占满。
  • 安全隔离:通过 userns-remap 将容器进程映射到独立用户命名空间。
  • 多环境适配:为开发、测试环境配置不同的默认网络或资源限制。

四、移除旧版本docker

1、移除命令

sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

2、报错解决:

如果遇到下面的报错的卸载失败问题是由于包名不匹配导致的。在 CentOS 7 中,Docker 的包名可能与您尝试卸载的名称不同。

解决方法:

1. 确认已安装的 Docker 包

首先列出所有已安装的 Docker 相关包:

rpm -qa | grep -i docker
# 或
yum list installed | grep -i docker

常见的 Docker 包名可能是:

  • docker-ce(社区版)
  • docker-ee(企业版)
  • docker-engine(旧版)

2. 使用正确的包名卸载

根据上一步的结果,使用实际包名卸载。例如:

curl -fsSL https://get.docker.com/ | sudo sh -s -- --uninstall

3. 尝试官方卸载脚本(可选)

如果通过 Docker 官方脚本安装,可使用其提供的卸载脚本:

curl -fsSL https://get.docker.com/ | sudo sh -s -- --uninstall

 4. 手动清理残留文件

如果卸载后仍残留文件,手动删除:

# 删除 Docker 数据目录(谨慎操作!)
sudo rm -rf /var/lib/docker# 删除配置文件
sudo rm -rf /etc/docker# 删除 systemd 服务文件
sudo rm -f /usr/lib/systemd/system/docker.service
sudo rm -f /usr/lib/systemd/system/docker.socket

5. 验证卸载

重启系统后检查 Docker 是否彻底删除:

which docker  # 应无输出
docker --version  # 应提示命令未找到

五、安装docker

1、测试环境,vm虚拟机,centOS 7.9;

2、配置docker yum源:

sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装 最新 docker,ce安装的是社区版本:

sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

4、 启动& 开机启动docker; enable + start 二合一

systemctl enable docker --now

5、# 配置加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://mirror.ccs.tencentyun.com","https://docker.m.daocloud.io"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

6、验证安装,检查 Docker 版本和运行状态:

docker --version
systemctl status docker

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/75888.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MATLAB求和∑怎么用?

MATLAB求和∑怎么用&#xff1f; 一&#xff1a;题目&#xff1a;求下列方程的和 二、代码如下 1.syms函数 &#xff08;方法一) 代码如下&#xff08;示例&#xff09;&#xff1a; 1. syms x 2. symsum((x.^22*x).^3,1,100) 3. 2.直接用循环 (方法二) 代码如下&am…

每日算法-链表(2.两数相加、24.两两交换链表中的节点、143.重排链表)

一.两数相加 1.1题目描述 1.2题解思路 定义两个指针l1,l2依次遍历两个链表&#xff0c;用变量add存储l1加l2的值&#xff0c;将add的个位数取出来充当新节点的值&#xff0c;然后将add的个位数删去&#xff0c;即add /10&#xff0c;循环此操作。 重点分析&#xff1a; 1.跟…

Flutter学习 滚动组件(1):ListView基本使用

目录 一、ListView构造方法1.1 常规方法1.2 ListView.builder1.3 ListView.separated 二、自定义ListView样式和布局&#xff1a;三、ListView性能优化&#xff1a;总结&#xff1a; 一、ListView构造方法 主要以下几种方法&#xff1a; 常规方法&#xff0c;直接使用默认的构…

ESLint常见错误

1、Strings must use singlequote —— 字符串必须使用单引号 2、Extra semicolon semi——额外的分号&#xff1a;一行语句结尾不能添加分号 3、Unexpected trailing comma —— 行尾多了一个逗号 4、Newline required at end of file but not found ——文件结尾必须要新加…

Windows进行磁盘分区/扩容

Windows进行磁盘分区/扩容 导航 文章目录 Windows进行磁盘分区/扩容导航分区教程压缩卷教程 用Windows自带的磁盘管理进行分区/扩容&#xff0c;但有个东西需要说明下是&#xff1a; 物理特性限制 磁盘分区的物理特性决定了扩容操作的方向。在磁盘上&#xff0c;数据是线性存储…

获取类路径

分析 String pathThread.currentThread().getContextClassLoader().getResource("log").getPath(); 这行代码用于获取类路径(classpath)下名为"log"的资源的文件系统路径&#xff0c;我来详细解析它的执行过程和潜在问题&#xff1a; 1. 代码分解解析 j…

安装fvm可以让电脑同时管理多个版本的flutter、flutter常用命令、vscode连接模拟器

打开 PowerShellfvm安装 dart pub global activate fvm安装完成后&#xff0c;如果显示FVM无法识别&#xff0c;那么需要去添加环境变量path添加这个&#xff1a;C:\Users\Administrator\AppData\Local\Pub\Cache\bin 常用命令 fvm releases 查看用户可以装的flutter版本fvm l…

Kaggle-Disaster Tweets-(二分类+NLP+模型融合)

Disaster Tweets 题意&#xff1a; 就是给出一个dataframe包含text这一列代表着文本&#xff0c;文本会有一些词&#xff0c;问对于每条记录中的text是真关于灾难的还是假关于灾难的。 比如我们说今天作业真多&#xff0c;这真是一场灾难。实际上这个灾难只是我们调侃而言的。…

Flutter 2025 Roadmap

2025 这个路线图是有抱负的。它主要代表了我们这些在谷歌工作的人收集的内容。到目前为止&#xff0c;非Google贡献者的数量超过了谷歌雇佣的贡献者&#xff0c;所以这并不是一个详尽的列表&#xff0c;列出了我们希望今年Flutter能够出现的所有令人兴奋的新事物&#xff01;在…

如何通过API接口获取淘宝商品价格?实操讲解

要通过API接口获取淘宝商品价格&#xff0c;需使用淘宝开放平台&#xff08;Taobao Open Platform, TOP&#xff09;提供的商品详情API&#xff08;如taobao.item.get或taobao.item_get&#xff09;。以下是完整的实操步骤&#xff1a; 一、前期准备 注册淘宝开放平台账号 访问…

按键精灵安卓/ios脚本辅助工具开发教程:如何把界面配置保存到服务器

在使用按键精灵工具辅助的时候&#xff0c;多配置的情况下&#xff0c;如果保存现有的配置&#xff0c;并且读取&#xff0c;尤其是游戏中多种任务并行情况下&#xff0c;更是需要界面进行保存&#xff0c;简单分享来自紫猫插件的配置保存服务器写法。 界面例子&#xff1a; …

DP34 【模板】前缀和 -- 前缀和

目录 一&#xff1a;题目 二&#xff1a;算法原理 三&#xff1a;代码实现 一&#xff1a;题目 题目链接&#xff1a;【模板】前缀和_牛客题霸_牛客网 二&#xff1a;算法原理 三&#xff1a;代码实现 #include <iostream> #include <vector> using namespac…

关于我的服务器

最近我买了台腾讯云服务器&#xff0c;然后新手小白只会用宝塔。。。 安装完之后默认的端口是8888&#xff0c;打开面板就会提示我有风险。然后 我改了端口之后&#xff0c;怎么都打不开。 于是 学到了几句命令可以使用&#xff1a; //查看端口是否已经修改成功 cat www/se…

机器学习常用算法总结

1. 概述 机器学习的定义是对于某类任务T和性能度量P&#xff0c;如果一个计算机程序在T上其性能P随着经验E而自我完善&#xff0c;那么我们就称这个系统从经验E中学习&#xff0c;机器学习是人工智能的一种方法&#xff0c;它通过在大量数据中学习隐藏的规则&#xff0c;模式和…

ns-3中UDP饱和流发包时间间隔设置最合理值

ns3的官方手册很全&#xff0c;相关书籍也是有的&#xff0c;官网先贴在这里&#xff1a; ns-3 | a discrete-event network simulator for internet systemsa discrete-event network simulator for internet systemshttps://www.nsnam.org/相关的脚本介绍也都有一些&#xf…

Windsurf代码依赖检查导入

目录 1. 在全局配置中根据需求设置检查的文件&#xff0c;以python为例 2. 执行命令生成requirements.txt文件&#xff0c;此操作可以将当前代码所需的依赖全部写入 3. 在Cascade对话窗口输入detect-dependencies查询 4. 根据查询出来的结果优化requirements.txt&#xff0c;可…

复变函数摘记3

复变函数摘记3 5. 留数5.1 可去奇点、极点、本性奇点5.2 零点与极点的关系5.3 在无穷远点处的情形5.4 留数 5. 留数 \quad 如果函数 f ( z ) f(z) f(z) 在 z 0 z_0 z0​ 及 z 0 z_0 z0​ 的邻域内处处可导&#xff0c;那么称 f ( z ) f(z) f(z) 在点 z 0 z_0 z0​ 处解析。…

vscode格式化为什么失效?自动保存和格式化(Prettier - Code formatter,vue-format)

vscode自动格式化保存最终配置 博主找了好多的插件&#xff0c;也跟着教程配置了很多&#xff0c;结果还是没有办法格式化&#xff0c;最终发现了一个隐藏的小齿轮&#xff0c;配置完后就生效了 关键步骤 关键配置 一定要点小齿轮&#xff01;&#xff01;&#xff01; 这个小…

Framer Motion简介

Framer Motion 是什么&#xff1f; Framer Motion 是一个 用于 React 的现代动画库&#xff0c;专为创建流畅、高性能且富有表现力的动画而设计。它不仅适合简单的 UI 动效&#xff0c;也能优雅地实现复杂的动画编排与手势交互。 &#x1f680; 为什么选择 Framer Motion&…

多种方案对比实现 Kaggle 比赛介绍进行行业分类

Kaggle 平台汇集了大量来自不同行业的数据科学竞赛&#xff0c;但这些比赛的标题或简介往往表述多样、不易直接归类。无论是做项目归档、行业研究&#xff0c;还是搭建竞赛推荐系统&#xff0c;都需要一个可靠的方法来将比赛自动归入对应行业标签。 本教程提供使用 HuggingFac…