一、docker的安装

embedded/2025/3/16 4:08:12/

docker_0">一、docker桌面

docker_2">二、docker的配置文件

dockeretcdockerdaemonjson_4">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_115">三、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
docker_189">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
  • 使用备用日志记录驱动程序,例如默认执行日志轮换的“本地”日志记录驱动程序
  • 使用将日志发送到远程日志记录聚合器的日志记录驱动程序。

文章来源:https://blog.csdn.net/jiaofan_yun/article/details/146189147
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ppmy.cn/embedded/172957.html

相关文章

论文分享 | HE-Nav: 一种适用于复杂环境中空地机器人的高性能高效导航系统

阿木实验室始终致力于通过开源项目和智能无人机产品&#xff0c;为全球无人机开发者提供强有力的技术支持&#xff0c;并推出了开源项目校园赞助活动&#xff0c;助力高校学子在学术研究与技术创新中取得更大突破。近日&#xff0c;香港大学王俊铭同学&#xff0c;基于阿木实验…

@RestControllerAdvice注解

RestControllerAdvice RestControllerAdvice 是 Spring Framework&#xff08;3.2&#xff09;和 Spring Boot 中用于全局处理控制器层异常和统一响应格式的注解。它结合了 ControllerAdvice 和 ResponseBody 的功能&#xff0c;能够拦截控制器方法抛出的异常&#xff0c;并以 …

使用Python爬虫根据关键词获取衣联网商品列表:实战指南

在电商领域&#xff0c;通过关键词搜索商品并获取商品列表是常见的需求。衣联网作为知名的电商平台&#xff0c;提供了丰富的服装商品资源。本文将详细介绍如何使用Python编写爬虫程序&#xff0c;根据关键词获取衣联网商品列表&#xff0c;并确保爬虫行为符合平台规范。 一、…

解锁下一代开发范式:IntelliJ Idea AI插件全景实战与未来展望

1、引言&#xff1a;AI重构开发工作流 随着大语言模型&#xff08;LLM&#xff09;技术的爆发式发展&#xff0c;编程工具正经历从“辅助工具”到“智能伙伴”的质变。据开发者社区统计&#xff0c;2025年已有超80%的开发者将AI插件深度融入日常工作流&#xff0c;而IntelliJ …

【Linux】在VMWare中安装Ubuntu操作系统(2025最新_Ubuntu 24.04.2)#VMware安装Ubuntu实战分享#

今天田辛老师为大家带来一篇关于在VMWare虚拟机上安装Ubuntu系统的详细教程。无论是学习、开发还是测试&#xff0c;虚拟机都是一个非常实用的工具&#xff0c;它允许我们在同一台物理机上运行多个操作系统。Ubuntu作为一款开源、免费且用户友好的Linux发行版&#xff0c;深受广…

Android 手机耗电数据分析工具介绍

和你一起终身学习&#xff0c;这里是程序员Android 本篇文章主要介绍 Android 开发中 电量 的部分知识点&#xff0c;通过阅读本篇文章&#xff0c;您将收获以下内容: 一、安装Battery Historian二、收集Batterystats 数据三、使用Battery Historian分析数据四、Batterystats 额…

Linux第三次作业

一.创建根目录结构中的所有的普通文件 使用 mkdir -pv [路径] 创建目录文件 使用 touch [路径] 创建普通文件 二.列出所有账号的账号名 用 cat 命令查看在 /etc/passwd 中的用户信息 用 cut -d [ ] -f[ ] 命令切割出所有用户名 三.将/etc/passwd中内容按照冒号隔开的第三个字符…

QKV矩阵:优维大模型自注意力机制的数学之美

★ 放闸溯源 优维大模型「骨架级」技术干货 第三篇 ⇓ QKV矩阵是Transformer自注意力机制的数学核心&#xff0c;其通过矩阵运算实现上下文信息的动态加权聚合。优维大模型将QKV的抽象计算逻辑具象化为运维场景的智能决策引擎&#xff0c;赋予系统“理解-推理-行动”的全链…