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

一、docker的安装

一、docker桌面

二、docker的配置文件

1、docker配置文件位置/etc/docker/daemon.json

使用json格式,graph=data-root

{"graph":"/deploy/docker","registry-mirrors": ["https://8auvmfwy.mirror.aliyuncs.com"],"insecure-registries": ["192.168.1.2","192.168.1.3:5000"],"live-restore": "true","exec-opts": ["native.cgroupdriver=systemd"],"storage-driver":"overlay2","ipv6": false,"bip":"172.18.0.1/24""default-address-pools": [{"scope": "local","base":"172.17.0.0/16","size":24}],"log-driver": "json-file","log-opts": {"max-size": "50m","max-size": "5m"}
}
graph:docker根目录的存放位置
registry-mirrors:镜像加速器
insecure-registries:指定信任仓库
live-restore:容器的存活不依赖与docker引擎,docker引擎停止不影响容器运行
native.cgroupdriver:指定cgroup驱动,默认值为cgroupfs,推荐值为systemd
storage-driver:存储驱动,overlay2、devicemapper、aufs
log-driver:日志驱动,json-file
bip:设置Docker0的默认IP,bip:设置Docker0的默认IP,
default-address-pools:配置容器使用的子网地址池base:指定CIDR网段,172.17.0.0/16表示子网掩码长度为16。相当于主网络size:变长子网掩码,数值要大于等于16。相当子网络
log-opts:日志策略。单个日志文件最大50M,最多保留3个
ipv6:是否开启ipv6,true,false

仅当storage-driver为devicemapper时可用

指定单个容器可用数据空间20GB、docker可用数据空间200GB、元数据可用空间4GB

{"storage-opt": [ "dm.basesize=20G","dm.loopdatasize=200G","dm.loopmetadatasize=4G" ]
}

2、案例

注:graph=data-root

{
"data-root": "/data/docker",
"insecure-registries": ["192.168.65.129:80"],
"registry-mirrors": ["https://8auvmfwy.mirror.aliyuncs.com"],
"log-driver": "json-file",
"log-opts": {"max-size": "100m","max-file": "3"},
"default-ulimits": {"nofile": {"Name": "nofile","Hard": 128000,"Soft": 128000}
}
}

三、docker引擎

(一)安装

1、contos7 安装

1.1 卸载旧版本
$ sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

卸载 Docker 时,存储在 中的映像、容器、卷和网络不会自动删除。/var/lib/docker/

1.2 安装方法

您可以根据需要以不同的方式安装 Docker 引擎:

  • 您可以设置 Docker 的存储库并安装 从他们那里,以便于安装和升级任务。这是 推荐的方法。
  • 您可以下载 RPM 软件包并手动安装并管理 完全手动升级。这在安装等情况下很有用 在无法访问互联网的气隙系统上的 Docker。
  • 在测试和开发环境中,您可以使用自动化的便利脚本来安装 Docker。
1.3 使用yum安装
1.3.1 设置yum源
$ sudo yum install -y yum-utils
$ sudo yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo
1.3.2 安装 Docker 引擎

1、安装 Docker Engine、containerd 和 Docker Compose

安装最新版本

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

安装之前版本

$ yum list docker-ce --showduplicates | sort -r
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin

此命令安装 Docker,但不启动 Docker。它还会创建一个组,但是,默认情况下不会向该组添加任何用户。docker

2、启动 Docker

$ sudo systemctl start docker

3、通过运行映像来验证 Docker 引擎安装是否成功。hello-world

$ sudo docker run hello-world
1.4 升级docker引擎

要升级 Docker 引擎,请按照安装说明进行操作, 选择要安装的新版本。

1.5 从包安装

如果您无法使用 Docker 的存储库来安装 Docker,您可以下载您的版本文件并手动安装。

  1. 转到 https://download.docker.com/linux/centos/ 并选择您的 CentOS 版本。然后浏览并下载要安装的 Docker 版本的文件。x86_64/stable/Packages/``.rpm

  2. 安装 Docker 引擎,将下面的路径更改为下载 Docker 包的路径

     $ sudo yum install /path/to/package.rpm
    

    Docker 已安装,但尚未启动。组已创建,但没有 用户将添加到组中。docker

  3. 启动 Docker。

     $ sudo systemctl start docker
    
  4. 通过运行映像来验证 Docker 引擎安装是否成功。hello-world

     $ sudo docker run hello-world
    

    此命令下载测试映像并在容器中运行它。当 容器运行,它会打印确认消息并退出。

1.6 使用脚本安装(最新版)
 $ curl -fsSL https://get.docker.com -o get-docker.sh$ sudo sh ./get-docker.sh --dry-run
1.7 卸载Docker
  1. 卸载 Docker Engine、CLI、containerd 和 Docker Compose 软件包:

     $ sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
    
  2. 主机上的映像、容器、卷或自定义配置文件 不会自动删除。删除所有映像、容器和 卷:

     $ sudo rm -rf /var/lib/docker$ sudo rm -rf /var/lib/containerd
    

您必须手动删除任何已编辑的配置文件。

2、linux安装静态二进制文件

  1. 下载静态二进制存档。转到 https://download.docker.com/linux/static/stable/, 选择您的硬件平台,然后下载与 要安装的 Docker 引擎版本。.tgz

  2. 使用该实用程序提取存档。提取 和 二进制文件。tar``dockerd``docker

    $ tar xzvf /path/to/<FILE>.tar.gz
    
  3. 可选:将二进制文件移动到可执行文件路径上的目录,例如 如。如果跳过此步骤,则必须提供 调用或命令时可执行。/usr/bin/``docker``dockerd

    $ sudo cp docker/* /usr/bin/
    
  4. 启动 Docker 守护进程:

    $ sudo dockerd &
    

    如果需要使用其他选项启动守护进程,请修改上述内容 命令或创建并编辑文件以添加自定义配置选项。/etc/docker/daemon.json

  5. 通过运行映像验证 Docker 是否已正确安装。hello-world

    $ sudo docker run hello-world
    

    此命令下载测试映像并在容器中运行它。当 容器运行,它会打印一条消息并退出。

3、以非 root 用户身份管理 Docker

要创建组并添加用户,请执行以下操作:docker

  1. 创建组。docker

    $ sudo groupadd docker
    
  2. 将您的用户添加到组中。docker

    $ sudo usermod -aG docker $USER
    
  3. 注销并重新登录,以便重新评估您的组成员身份。

    如果您在虚拟机中运行 Linux,则可能需要 重新启动虚拟机以使更改生效。

    您还可以运行以下命令来激活对组的更改:

    $ newgrp docker
    
  4. 验证是否可以在没有 .docker``sudo

    $ docker run hello-world
    

    此命令下载测试映像并在容器中运行它。当 容器运行,它会打印一条消息并退出。

    如果您最初在添加用户之前运行了 Docker CLI 命令 对于该组,您可能会看到以下错误:sudo``docker

    WARNING: Error loading config file: /home/user/.docker/config.json -
    stat /home/user/.docker/config.json: permission denied
    

    此错误表示目录的权限设置不正确,因为之前使用了该命令。~/.docker/``sudo

    若要解决此问题,请删除目录(已重新创建) 自动,但任何自定义设置都将丢失),或更改其所有权和 使用以下命令的权限:~/.docker/

    $ sudo chown "$USER":"$USER" /home/"$USER"/.docker -R
    $ sudo chmod g+rwx "$HOME/.docker" -R
    

4、将 Docker 配置为使用 systemd 启动启动

许多现代 Linux 发行版使用 systemd 来 管理系统引导时启动哪些服务。在 Debian 和 Ubuntu 上, 默认情况下,Docker 服务在启动时启动。要自动启动 Docker 和 对于使用 systemd 的其他 Linux 发行版,在引导时运行 以下命令:

$ sudo systemctl enable docker.service
$ sudo systemctl enable containerd.service

若要停止此行为,请改用。disable

$ sudo systemctl disable docker.service
$ sudo systemctl disable containerd.service

如果需要添加 HTTP 代理,请为 Docker 运行时文件,或进行其他自定义,请参阅自定义 systemd Docker 守护程序选项。

5、配置默认日志记录驱动程序

Docker 提供日志记录驱动程序 从主机上运行的所有容器收集和查看日志数据。这 默认日志记录驱动程序 ,将日志数据写入 JSON 格式的文件 主机文件系统。随着时间的推移,这些日志文件的大小会扩大,导致 磁盘资源可能耗尽。json-file

为避免过度使用磁盘存储日志数据的问题,请考虑以下事项之一 选项:

  • 配置日志记录驱动程序以启用日志轮换json-file
  • 使用备用日志记录驱动程序,例如默认执行日志轮换的“本地”日志记录驱动程序
  • 使用将日志发送到远程日志记录聚合器的日志记录驱动程序。

相关文章:

一、docker的安装

一、docker桌面 二、docker的配置文件 1、docker配置文件位置/etc/docker/daemon.json 使用json格式&#xff0c;graphdata-root {"graph":"/deploy/docker","registry-mirrors": ["https://8auvmfwy.mirror.aliyuncs.com"],"…...

『PostgreSQL』PGSQL备份与还原实操指南

&#x1f4e3;读完这篇文章里你能收获到 了解逻辑备份与物理备份的区别及适用场景&#x1f50d;。掌握全库、指定库、指定表备份还原的命令及参数&#x1f4dd;。学会如何根据业务需求选择合适的备份策略&#x1f4ca;。熟悉常见备份还原问题的排查与解决方法&#x1f527;。 …...

Redis 主从复制详解:实现高可用与数据备份

目录 引言 1. 什么是 Redis 主从复制&#xff1f; 1.1 定义 1.2 核心概念 2. Redis 主从复制的工作原理 2.1 复制流程 2.2 复制流程图 3. Redis 主从复制的配置方法 3.1 通过配置文件配置 主节点配置 从节点配置 3.2 通过命令行配置 设置从节点 取消从节点 4. Re…...

facebook游戏投广:提高广告关键数据的方法

在当今竞争激烈的数字营销领域&#xff0c;游戏广告的投放效果直接关系到游戏公司的市场表现和盈利能力。然而&#xff0c;许多游戏公司在广告投放上面临着诸多挑战&#xff0c;如高昂的成本、低效的转化率以及难以追踪的效果。那么&#xff0c;如何才能通过数据分析真正提升游…...

HybridCLR Generate All 报错UnityLinker.exe

现象&#xff1a; Generate All 报错 Building Library\Bee\artifacts\Android\ManagedStripped failed with output: E:\XingJiKongLong\HybridCLRData\LocalIl2CppData-WindowsEditor\il2cpp\build\deploy\UnityLinker.exe Library\Bee\artifacts\rsp\10776760506222613018.…...

大一新生备战蓝桥杯c/c++B组——2024年省赛真题解题+心得分享

一&#xff0c;握手问题 这个题用点像小学奥数&#xff0c;直接手算就行 答案&#xff1a;1204 二&#xff0c;小球反弹 这个题思路简单&#xff0c;但是运行会显示超时。在思考思考&#xff0c;后续补代码。 三&#xff0c;好数 思路一&#xff1a; #include <iostream&…...

【Java】——数据类型和变量

个人主页&#xff1a;User_芊芊君子 &#x1f389;欢迎大家点赞&#x1f44d;评论&#x1f4dd;收藏⭐文章 文章目录&#xff1a; 1.Java中的注释1.1.基本规则1.2.注释规范 2.标识符3.关键字4.字面常量5.数据类型6.变量6.1变量的概念6.2语法6.3整型变量6.3.1整型变量6.3.2长整…...

docker 安装常用镜像

我们在上篇文章中已经修改了daemon.json 安装镜像时如果search超时就直接pull 安装mysql docker pull mysql:5.7 启动命令 docker run --name mysql-docker -p 3306:3306 -e MYSQL_ROOT_PASSWORDroot1234 -d mysql:5.7 ocker run&#xff1a;运行docker容器命令 --name my…...

SpringMVC 基本概念与代码示例

1. SpringMVC 简介 SpringMVC 是 Spring 框架中的一个 Web 层框架&#xff0c;基于 MVC&#xff08;Model-View-Controller&#xff09; 设计模式&#xff0c;提供了清晰的分层结构&#xff0c;适用于 Web 应用开发 SpringMVC 主要组件 DispatcherServlet&#xff08;前端控…...

MKS HA-MFV:半导体制造中的高精度流量验证技术解析

引言 在半导体先进制程&#xff08;如3nm节点&#xff09;中&#xff0c;工艺气体流量的精准控制直接决定刻蚀、沉积等关键步骤的均匀性和良率。MKS Instruments推出的 HA-MFV&#xff08;High Accuracy Mass Flow Verifier&#xff09; 通过创新设计解决了传统流量验证技术的…...

版本号标识

Visual Studio 16 2019 是 Microsoft Visual Studio 2019 的版本号标识。具体来说&#xff1a; Visual Studio 是微软提供的一款集成开发环境&#xff08;IDE&#xff09;&#xff0c;用于开发各种应用程序&#xff0c;如桌面软件、Web 应用、移动应用等&#xff0c;支持多种编…...

基于Python实现手写数字识别

KNN实验——手写数字识别 实验目的&#xff1a; 实验内容&#xff1a; 实现最基本的KNN算法&#xff0c;使用trainingDigits文件夹下的数据&#xff0c;对testDigits中的数据进行预测。&#xff08;K赋值为1&#xff0c;使用欧氏距离&#xff0c;多数投票决定分类结果&#…...

shell的模拟实现 ─── linux第16课

目录 第一版只能维护命令行参数表创建子进程, 执行非内建命令 第一版的执行结果: 第二版能维护命令行参数表执行cd命令 ,判断了是否是自建命令(mysell自己执行自建命令,可以对环境变量发生改变),子进程执行其他命令. 第二版执行结果: 第三版 模拟真实shell从系统文件中获取环…...

游戏引擎学习第153天

仓库:https://gitee.com/mrxiao_com/2d_game_3 回顾 目前正在进行的是一个比较大的系统调整&#xff0c;原本预计今天会继续深入这个改动&#xff0c;但实际上在昨天的开发中&#xff0c;我们已经完成了大部分的代码编写&#xff0c;并且运行之后几乎一切都能正常工作&#x…...

理解C语言中的extern关键字

在C语言编程中&#xff0c;extern关键字是一个非常重要的概念&#xff0c;尤其在多文件编程和全局变量的使用中。本文将详细解释extern的作用、用法以及常见的应用场景。 1. extern关键字的作用 extern关键字用于声明一个变量或函数是在其他文件中定义的。它告诉编译器&#x…...

【MyBatis Plus 逻辑删除详解】

文章目录 MyBatis Plus 逻辑删除详解前言什么是逻辑删除&#xff1f;MyBatis Plus 中的逻辑删除1. 添加逻辑删除字段2. 实体类的配置3. 配置 MyBatis Plus4. 使用逻辑删除5. 查询逻辑删除的记录 MyBatis Plus 逻辑删除详解 前言 MyBatis Plus 是一个强大的持久化框架&#xf…...

latex问题汇总

latex问题汇总 环境问题1 环境 texlive2024 TeXstudio 4.8.6 (git 4.8.6) 问题1 编译过程有如下错 ! Misplaced alignment tab character &. l.173 International Conference on Infrared &Millimeter Waves, 2004: 667--... I cant figure out why you would wa…...

基于Redis实现限流

限流尽可能在满足需求的情况下越简单越好&#xff01; 1、基于Redsi的increment方法实现固定窗口限流 Redis的increment方法保证并发线程安全窗口尽可能越小越好(太大可能某一小段时间就打满请求剩下的都拿不到令牌了)这个原理其实就是用当前时间戳然后除窗口大小 在这个窗口大…...

力扣练习之确定两个字符串是否接近

目录 题目&#xff1a; 题解&#xff1a; 详细题解 题目&#xff1a; 如果可以使用以下操作从一个字符串得到另一个字符串&#xff0c;则认为两个字符串 接近 &#xff1a; 操作 1&#xff1a;交换任意两个 现有 字符。 例如&#xff0c;abcde -> aecdb 操作 2&#xff1…...

大三下找C++开发实习的感受分享

目录 找实习的过程 阶段一&#xff1a;投简历 阶段二&#xff1a;准备面试 阶段三&#xff1a;面试中 阶段四&#xff1a;面试结束后 面试真题 总结 找实习的过程 阶段一&#xff1a;投简历 第一次找实习还是使用BOSS这个软件进行投简历&#xff0c;这个过程其实挺难说…...

基于hive的电信离线用户的行为分析系统

标题:基于hive的电信离线用户的行为分析系统 内容:1.摘要 随着电信行业的快速发展&#xff0c;用户行为数据呈现出海量、复杂的特点。为了深入了解用户行为模式&#xff0c;提升电信服务质量和精准营销能力&#xff0c;本研究旨在构建基于 Hive 的电信离线用户行为分析系统。通…...

Makefile——make工具编译STM32工程

一、Makefile相关指令 1.1、变量 符号含义替换追加:恒等于 1.2、隐含规则 符号含义%.o任意的.o文件*.o所有的.o文件 1.3、通配符 符号含义$^所有依赖文件$所有目标文件$<所有依赖文件的第一个文件 1.4、编译器指令常用参数功能说明 符号含义举例-E预处理&#xff0c;…...

Java EE 进阶:SpringBoot 配置⽂件

什么是配置文件 “配置文件”是一个用来保护程序或者系统设置信息的文件&#xff0c;它的作用是让程序在启动或者运行中&#xff0c;能够读取这些设置并按预期进行工作&#xff0c;而不需要手动的设置。 Spring Boot 配置文件 设置服务器端口、编码格式配置数据库连接控制日…...

【redis】五种数据类型和编码方式

文章目录 五种数据类型编码方式stringhashlistsetzset查询内部编码 五种数据类型 字符串&#xff1a;Java 中的 String哈希&#xff1a;Java 中的 HashMap列表&#xff1a;Java 中的 List集合&#xff1a;Java 中的 Set有序集合&#xff1a;除了存 member 之外&#xff0c;还有…...

基于Python的电商销售数据分析与可视化系统实

一、系统架构设计 1.1系统流程图 #mermaid-svg-Pdo9oZWrVHNuOoTT {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-Pdo9oZWrVHNuOoTT .error-icon{fill:#552222;}#mermaid-svg-Pdo9oZWrVHNuOoTT .error-text{fill:#5…...

色板在数据可视化中的创新应用

色板在数据可视化中的创新应用&#xff1a;基于色彩感知理论的优化实践 引言 在数据可视化领域&#xff0c;色彩编码系统的设计已成为决定信息传递效能的核心要素。根据《Nature》期刊2024年发布的视觉认知研究&#xff0c;人类大脑对色彩的识别速度比形状快40%&#xff0c;色…...

EB-Cable许可管理中的数据安全与隐私保护

在数字化时代&#xff0c;数据安全与隐私保护已成为企业关注的重中之重。作为专业的电缆管理软件&#xff0c;EB-Cable许可管理不仅在功能丰富和操作便捷方面表现出色&#xff0c;更在数据安全与隐私保护方面为用户提供了坚实的保障。本文将详细介绍EB-Cable许可管理在数据安全…...

解决ubuntu(jetpack)系统下系统盘存储不够的

以下是可以安全清理的内容及操作步骤&#xff0c;按优先级和风险从低到高排序&#xff1a; 1. 清理日志文件&#xff08;低风险&#xff09; /var/log/syslog (7.1G) # 清空syslog文件&#xff08;不删除文件本身&#xff09; sudo truncate -s 0 /var/log/syslog# 或限制sys…...

【无人机路径规划】基于麻雀搜索算法(SSA)的无人机路径规划(Matlab)

效果一览 代码获取私信博主基于麻雀搜索算法&#xff08;SSA&#xff09;的无人机路径规划&#xff08;Matlab&#xff09; 一、算法背景与核心思想 麻雀搜索算法&#xff08;Sparrow Search Algorithm, SSA&#xff09;是一种受麻雀群体觅食行为启发的元启发式算法&#xff0…...

STM32_GPIO系统外设学习

按照STM32MCUWIKI、参考手册的外设介绍----->CubeF4的软件包中相关的Exmple代码----->CubeMX设置截图加深理解记忆 资料链接&#xff1a;嵌入式开发_硬软件的环境搭建 我的飞书文档-GPIO篇 如果觉得内容不错&#xff0c;欢迎给我的飞书文档点赞。同时如果有什么意见或…...