当前位置: 首页 > news >正文

Docker安装

Docker实践

yum安装

YUM源可以使用官方YUM源、清华大学开源镜像站配置YUM源,也可以使用阿里云开源镜像站提供的YUM源,建议选择使用阿里云开源镜像站提供的YUM源,原因速度快。

地址: https://developer.aliyun.com/mirror/

我们安装ce版

https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.655e1b11Z3g4Hj

查看os信息

[root@centos133 ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

环境要求

内核要求

uname -r
> 3.10.0-514.el7.x86_64

3.10.0以上

关闭防火墙

firewall-cmd --state
> running

在CentOS 7及其以上版本中,firewalld是默认的防火墙,你可以通过以下命令关闭它并使其在重启后依然保持关闭状态:

  1. 关闭防火墙:
sudo systemctl stop firewalld
  1. 禁用防火墙服务,使其在重启后不会自动启动:
sudo systemctl disable firewalld
firewall-cmd --state
> not running

关闭selinux

sestatus

SELinux (Security Enhanced Linux) 是一个用于实施访问控制策略的 Linux 内核安全模块。虽然 SELinux 提供了增强的安全控制,但是也给系统配置和管理增加了一些复杂性。如果不正确地配置 SELinux,可能会阻止应用程序或服务正常工作。

要在CentOS 7中禁用 SELinux,按照以下步骤进行:

  1. 打开 SELinux 配置文件:
sudo vi /etc/selinux/config
  1. 找到 SELINUX 行,将其值更改为 disabled
SELINUX=disabled

然后保存并关闭文件。

此处眼睛要仔细,很可能enable就在前面,这会导致无法关闭selinux,已淌过坑,不谢

  1. 重启系统以使更改生效:
sudo reboot
  1. 重启后,你可以运行以下命令确认 SELinux 已被禁用:
sestatus

输出应显示 SELinux status: disabled,表明 SELinux 已被禁用。

下载

# 在docker host上使用 wget下载到/etc/yum.repos.d目录中即可。
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 验证是否可用
yum repolist

status列,软件包数量>0即可

ls /etc/yum.repos.d/
# 直接安装docker-ce,此为docker daemon,所有依赖将被yum自动安装,含docker client等。
yum -y install docker-ce

以下是官方步骤,不一定非得执行,可以参考.

# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo service docker start# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]

配置启动文件

配置Docker daemon

为什么修改启动文件?

  • 避免docker对宿主机造成影响比如防火墙

由于Docker使用过程中会对Centos操作系统中的Iptables防火墙中的FORWARD链默认规划产生影响及需要让Docker Daemon接受用户自定义的daemon.json文件,需要要按使用者要求的方式修改。

  • 定义自己调用的服务:如镜像仓库等等

文件位置

vim /usr/lib/systemd/system/docker.service

删除sock

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

防火墙

ExecStartPost=/sbin/iptables -P FORWARD ACCEPT

重新加载

# 重启加载daemon文件
systemctl daemon-reload

启动

# 启动docker daemon
systemctl start docker# 设置开机自启动
systemctl enable docker

验证版本

使用Docker 客户端

# 使用docker version客户端命令查看已安装docker软件版本
docker version

涉及防火墙

在这里插入图片描述

避免docker对防火墙造成影响,有时候划线部分会变成Reject使网络不通

二进制安装

官方不建议此种部署方式,主因为不能自动更新,在条件有限制的情况下使用。

二进制安装参考网址:https://docs.docker.com/engine/install/binaries/

获取二进制文件,此文件中包含dockerd与docker 2个文件。
# wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz
解压下载的文件
# tar xf docker-20.10.9.tgz
查看解压出的目录
# ls docker
containerd       containerd-shim-runc-v2  docker   docker-init   runc
containerd-shim  ctr                      dockerd  docker-proxy
安装解压后的所有二进制文件
# cp docker/* /usr/bin/
运行Daemon
# dockerd &会有大量的信息输出,停止后,直接回车即可使用。
如果您需要使用其他选项启动守护程序,请相应地修改上述命令或创建并编辑文件`/etc/docker/daemon.json` 以添加自定义配置选项。
确认是否可以使用docker客户端命令
# which docker
/usr/bin/docker使用二进制安装的docker客户端
# docker version

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

获取二进制文件,此文件中包含dockerd与docker 2个文件。
# wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.9.tgz
解压下载的文件
# tar xf docker-20.10.9.tgz
查看解压出的目录
# ls docker
containerd       containerd-shim-runc-v2  docker   docker-init   runc
containerd-shim  ctr                      dockerd  docker-proxy

其他

ExecStart=/usr/bin/dockerd

docker.service文件中ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock这个是什么意思?有什么作用

这行指令在 Docker 服务启动时被执行。解读这行指令如下:

  • ExecStart: 这是 Systemd 的一个指令,用来定义当服务启动时要执行的命令。

  • /usr/bin/dockerd: 这是 Docker 守护进程(dockerd)的完整路径,它是 Docker 运行的主要进程,用于管理 Docker 容器。

  • -H fd://: 这是 Docker 守护进程的一个选项,-H 用来定义 Docker 守护进程监听的地址。fd:// 是一个特殊的监听地址,用于与 Systemd 进行集成,让 Systemd 负责处理 Docker 守护进程的 socket。

  • --containerd=/run/containerd/containerd.sock: 这是 Docker 守护进程的另一个选项,定义了 Docker 守护进程与 containerd 守护进程通信的 socket 的路径。containerd 是 Docker 的一个组件,用于管理容器的生命周期。

所以这行命令的作用是,当 Docker 服务启动时,启动 Docker 守护进程,让它监听 Systemd 提供的 socket,并通过指定的 socket 与 containerd 守护进程通信。

-H fd://--containerd=/run/containerd/containerd.sock 这两个参数指定了 Docker 守护进程与其它服务(例如 systemd 和 containerd)之间的通信方式。在大多数情况下,这两个参数是有用的,应该保留。它们让 Docker 更好地与宿主机的系统集成,提高了 Docker 的稳定性和效率。

然而,在某些特殊的配置或使用场景中,你可能需要修改这些参数或完全移除它们。比如:

  1. 如果你想要 Docker 守护进程监听 TCP 端口,以便从远程管理 Docker,你需要添加 -H tcp://<ip>:<port> 参数。这可能需要你移除 -H fd:// 参数,因为 Docker 守护进程只能监听一种类型的 socket。

  2. 如果你想要 Docker 守护进程直接与 Docker 的 containerd 组件通信,而不是通过 socket 文件,你可以移除 --containerd=/run/containerd/containerd.sock 参数。

注意,这些修改可能会增加 Docker 的安全风险,降低 Docker 的稳定性和效率,因此只有在你完全理解这些参数的含义,并且确定你需要这样做时,才应该进行这些修改。

相关文章:

Docker安装

Docker实践 yum安装 YUM源可以使用官方YUM源、清华大学开源镜像站配置YUM源&#xff0c;也可以使用阿里云开源镜像站提供的YUM源&#xff0c;建议选择使用阿里云开源镜像站提供的YUM源&#xff0c;原因速度快。 地址: https://developer.aliyun.com/mirror/ 我们安装ce版 …...

06. 计数原理

6. 计数原理 6.1 分类加法计数原理与分步乘法计数原理 分类加法计数原理定义 完成一件事&#xff0c;有 n n n 类办法&#xff0c;在第1类办法中有 m 1 m_1 m1​ 种不同的方法&#xff0c;在第2类办法中有 m 2 m_2 m2​ 种不同的方法&#xff0c;…&#xff0c;在第 n n…...

计算机网络基础(静态路由,动态路由,公网IP,私网IP,NAT技术)

文章目录 一&#xff1a;静态路由和动态路由二&#xff1a;静态路由的配置路由信息的方式演示三&#xff1a;默认路由四&#xff1a;公网IP和私网IP和NAT技术的基本理解 一&#xff1a;静态路由和动态路由 在说静态路由和动态路由前&#xff0c;我们需要来了解一下&#xff0…...

CGAL 点云Alpha-Shape曲面重建算法

文章目录 一、简介二、相关参数三、实现代码四、实现效果参考资料一、简介 在数学上, a l p h a − s h a p e alpha-shape a...

Java 文件过滤器FileFilter | 按条件筛选文件

文章目录 一、概述1.1 何时会用到文件过滤器1.2 工作流程1.3 常用的接口和类1.4 文件过滤器的作用 二、按文件属性过滤2.1 按前缀或后缀过滤文件名2.2 按文件大小过滤 三、按文件内容过滤3.1 文本文件过滤器3.1.1 根据关键字过滤文件内容3.1.2 使用正则表达式过滤文件内容 3.2 …...

python格式化地址信息

背景 最近在折腾一个好玩的库&#xff0c;capa 实现地址的格式化输出。我看的教程是这样的&#xff1a; location_str ["徐汇区虹漕路461号58号楼5楼", "泉州市洛江区万安塘西工业区"] import cpca df cpca.transform(location_str) df在正式的运行代码…...

k8s1.26.6 安装gitlab

Gitlab官方提供了 Helm 的方式在 Kubernetes 集群中来快速安装&#xff0c;但是在使用的过程中发现 Helm 提供的 Chart 包中有很多其他额外的配置&#xff0c;所以我们这里使用自定义的方式来安装&#xff0c;也就是自己来定义一些资源清单文件。 Gitlab主要涉及到3个应用&…...

C5.0决策树建立个人信用风险评估模型

通过构建自动化的信用评分模型&#xff0c;以在线方式进行即时的信贷审批能够为银行节约很多人工成本。本案例&#xff0c;我们将使用C5.0决策树算法建立一个简单的个人信用风险评估模型。 导入类库 读取数据 #创建编码所用的数据字典 col_dicts{} #要编码的属性集 cols [che…...

【k8s集群部署】使用containerd运行时部署kubernetes集群(V1.27版本)

【k8s集群部署】使用containerd运行时部署kubernetes集群(V1.27版本) 一、本次实践介绍1.1 环境规划介绍1.2 本次实践简介二、三台主机基础环境配置2.1 主机配置工作2.2 关闭防火墙和selinux2.3 关闭swap2.4 清空iptables2.5 配置时间同步2.6 修改内核参数2.7 配置hosts文件三…...

网络安全进阶学习第八课——信息收集

文章目录 一、什么是信息收集&#xff1f;二、信息收集的原则三、信息收集的分类1.主动信息收集2.被动信息收集 四、资产探测1、Whois查询#常用网站&#xff1a; 2、备案信息查询#常用网站&#xff1a; 3、DNS查询#常用网站&#xff1a; 4、子域名收集#常用网站&#xff1a;#常…...

Spring Data Elasticsearch - 在Spring应用中操作Elasticsearch数据库

Spring Data Elasticsearch 文章目录 Spring Data Elasticsearch1. 定义文档映射实体类2. Repository3. ElasticsearchRestTemplate3.1 查询相关特性3.1.1 过滤3.1.2 排序3.1.3 自定义分词器 3.2 高级查询 4. 索引管理4.1 创建索引4.2 检索索引4.3 修改映射4.4 删除索引 5. 异常…...

图论-简明导读

计算机图论是计算机科学中的一个重要分支&#xff0c;它主要研究图的性质和结构&#xff0c;以及如何在计算机上有效地存储、处理和操作这些图。本文将总结计算机图论的核心知识点。 一、基本概念 计算机图论中的基本概念包括图、节点、边等。图是由节点和边构成的数据结构&am…...

记一次 .NET 某物流API系统 CPU爆高分析

一&#xff1a;背景 1. 讲故事 前段时间有位朋友找到我&#xff0c;说他程序CPU直接被打满了&#xff0c;让我帮忙看下怎么回事&#xff0c;截图如下&#xff1a; 看了下是两个相同的程序&#xff0c;既然被打满了那就抓一个 dump 看看到底咋回事。 二&#xff1a;为什么会打…...

【Docker】Docker安装Kibana服务_Docker+Elasticsearch+Kibana

文章目录 1. 什么是Kibana2. Docker安装Kibana2.1. 前提2.2. 安装Kibana 点击跳转&#xff1a;Docker安装MySQL、Redis、RabbitMQ、Elasticsearch、Nacos等常见服务全套&#xff08;质量有保证&#xff0c;内容详情&#xff09; 1. 什么是Kibana Kibana 是一款适用于Elasticse…...

前端面试题-VUE

1. 对于MVVM的理解 MVVM 是 Model-View-ViewModel 的缩写Model 代表数据模型&#xff0c;也可以在 Model 中定义数据修改和操作的业务逻辑。View 代表 UI 组件&#xff0c;它负责将数据模型转化成 UI 展现出来。ViewModel 监听模型数据的改变和控制视图⾏为、处理⽤户交互&…...

Linux嵌入式平台安全启动理解介绍

一、意义 安全启动可以防止未授权的或是进行恶意篡改的软件在系统上运行,是系统安全的保护石,每一级的前一个镜像会对该镜像进行校验。 1.1 安全启动原理介绍 通过数字签名进行镜像完整性验证(使用到非对称加密算法和哈希算法) 签名过程: raw_image--->use ha…...

安全学习DAY09_加密逆向,特征识别

算法逆向&加密算法分类&#xff0c;特征识别 文章目录 算法逆向&加密算法分类&#xff0c;特征识别算法概念&#xff0c;分类单向散列加密 - MD5对称加密 - AES非对称加密 - RSA 常见加密算法识别特征&#xff0c;解密特点MD5密文特点BASE64编码特点AES、DES特点RSA密文…...

原型模式(Prototype)

原型模式是一种创建型设计模式&#xff0c;使调用方能够复制已有对象&#xff0c;而又无需使代码依赖它们所属的类。当有一个类的实例&#xff08;原型&#xff09;&#xff0c;并且想通过复制原型来创建新对象时&#xff0c;通常会使用原型模式。 The Prototype pattern is g…...

深度学习之用PyTorch实现线性回归

代码 # 调用库 import torch# 数据准备 x_data torch.Tensor([[1.0], [2.0], [3.0]]) # 训练集输入值 y_data torch.Tensor([[2.0], [4.0], [6.0]]) # 训练集输出值# 定义线性回归模型 class LinearModel(torch.nn.Module):def __init__(self):super(LinearModel, self)._…...

45.248.11.X服务器防火墙是什么,具有什么作用

防火墙是一种网络安全设备或软件&#xff0c;服务器防火墙的作用主要是在服务器和外部网络之间起到一个安全屏障的作用&#xff0c;保护计算机网络免受未经授权的访问、恶意攻击或不良网络流量的影响&#xff0c;保护服务器免受恶意攻击和非法访问。它具有以下功能&#xff1a;…...

如何通过DeepEval解决LangChain应用的可观测性与评估难题

如何通过DeepEval解决LangChain应用的可观测性与评估难题 【免费下载链接】deepeval The LLM Evaluation Framework 项目地址: https://gitcode.com/GitHub_Trending/de/deepeval DeepEval作为专业的LLM评估框架&#xff0c;为LangChain开发者提供了从测试到生产监控的完…...

RAG幻觉根治手册:系统化消除检索增强生成中的错误输出

RAG 系统产生幻觉不是偶然&#xff0c;而是有明确的根因。本文从幻觉的成因分类入手&#xff0c;给出每类幻觉的系统性解决方案&#xff0c;帮助你把 RAG 准确率从 70% 提升到 95%。RAG 幻觉的三大根源在实践中&#xff0c;RAG 幻觉来自三个层面&#xff1a;检索层幻觉&#xf…...

ML模型服务化落地实战:从Notebook到高稳定生产环境

1. 项目概述&#xff1a;这不是一次“部署上线”演示&#xff0c;而是一场真实世界的ML交付实战复盘“From Notebook to Production: Running ML in the Real World (Part 4)”——这个标题里藏着三个关键信号&#xff1a;Notebook是起点&#xff0c;不是终点&#xff1b;Produ…...

如何用FARM框架在5分钟内搭建专业问答系统

如何用FARM框架在5分钟内搭建专业问答系统 【免费下载链接】FARM :house_with_garden: Fast & easy transfer learning for NLP. Harvesting language models for the industry. Focus on Question Answering. 项目地址: https://gitcode.com/gh_mirrors/far/FARM F…...

终极指南:如何用TrollInstallerX快速解锁iOS系统自由

终极指南&#xff1a;如何用TrollInstallerX快速解锁iOS系统自由 【免费下载链接】TrollInstallerX A TrollStore installer for iOS 14.0 - 16.6.1 项目地址: https://gitcode.com/gh_mirrors/tr/TrollInstallerX 想要打破iOS系统的限制&#xff0c;安装更多个性化应用…...

DeepSpeech终极指南:离线语音识别的深度学习引擎完整实践

DeepSpeech终极指南&#xff1a;离线语音识别的深度学习引擎完整实践 【免费下载链接】DeepSpeech DeepSpeech is an open source embedded (offline, on-device) speech-to-text engine which can run in real time on devices ranging from a Raspberry Pi 4 to high power G…...

从一家工厂的产品图、SKU 宽度和产品页,能读出哪些经营信息?一份给采购方和上游销售员的读图手册

采购、品牌方、上游销售员常遇到同一种困惑&#xff1a;打开一家"工厂"的店铺&#xff0c;产品图漂亮、SKU 铺得一大屏、参数行行写满&#xff0c;但聊几句发现对方根本不是工厂&#xff0c;是转单贸易商&#xff1b;或者是真工厂&#xff0c;但定位和需求完全错位。…...

2026最新测评:4款海外降英文文本AIGC工具实测

我用GPT写了一篇英文技术报告&#xff0c;然后分别扔进4个降AI工具。结果出乎意料。如果你经常用ChatGPT、Claude或Gemini写英文内容——无论是论文摘要、技术文档、公司报告还是博客文章——你一定遇到过这个尴尬&#xff1a;明明内容是自己构思、自己修改的&#xff0c;但Tur…...

2026年想做美缝施工?专业靠谱的美缝施工究竟哪家好?

在装修领域&#xff0c;美缝施工虽看似是小工程&#xff0c;却对家居整体美观度和实用性影响重大。然而&#xff0c;美缝行业乱象丛生&#xff0c;让众多业主在选择美缝施工团队时犯了难。2026年若想做美缝施工&#xff0c;怎样才能选到专业靠谱的团队呢&#xff1f;下面为大家…...

别再只用Selenium了!手把手教你用Python+UIAutomation+Unittest搭建Windows应用自动化测试框架

从Selenium到UIAutomation&#xff1a;Windows GUI自动化测试实战进阶指南 当Web自动化测试工程师首次接触Windows桌面应用测试时&#xff0c;往往会陷入工具选择的困境。传统基于坐标操作的自动化方案难以应对动态界面变化&#xff0c;而商业工具又存在学习成本高、灵活性不足…...