Docker启动参数超详细讲解
整改
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
修改监听地址为本地127.0.0.1,不允许支持远程访问
ExecStart=/usr/bin/dockerd -H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock
说明
这两个命令都是启动 Docker 服务的命令,但是有一些区别。
第一个命令:
ExecStart=/usr/bin/dockerd -H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock
- 使用两个监听地址,一个是 TCP 协议的 127.0.0.1:2375,一个是 Unix Socket 的 /var/run/docker.sock。
- 这个命令会启动 Docker daemon,但是它不会启动容器运行时(containerd 或者 CRI-O)。
第二个命令:
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
- 使用一个监听地址,fd://,它会监听来自 systemd 的文件描述符。
- 使用 containerd 作为容器运行时。
- 这个命令会启动 Docker daemon 和容器运行时。
fd://
是一个特殊的监听地址,用于 Docker 中的某些网络插件(如systemd
插件)。它是与 Systemd 服务管理器配合使用的一种机制。
在 Linux 系统中,Systemd 是一个广泛采用的初始化系统和服务管理器。它可以通过文件描述符(File Descriptor)传递信息和通信。
fd://
地址用于指示 Docker 使用 Systemd 服务管理器传递文件描述符,以实现容器与宿主机之间的通信。
当 Docker 容器需要与宿主机上的 Systemd 进程通信时,可以通过使用 fd://
地址来监听 Systemd 的文件描述符。这样,容器内的进程就可以通过这个文件描述符与 Systemd 进程进行通信,实现与宿主机上的 Systemd 进程的交互。
使用 fd://
地址需要特定的网络插件和配置。通常情况下,这种配置是由 Docker 网络插件或容器运行时的配置来管理的。
需要注意的是,使用 fd://
地址和 Systemd 插件需要特定的环境和配置,并且这种机制与 Docker 默认的网络配置和通信方式有所不同。因此,具体的使用和配置方法可能因系统和环境而异。如果你需要更详细的信息,建议参考相关的文档和配置指南,以确保正确配置和使用 fd://
地址。
在 Docker 中,Systemd 插件是一种网络插件,用于集成 Docker 容器与宿主机上的 Systemd 服务管理器。它允许容器在启动时,通过 Systemd 机制来管理和监控系统服务。
当使用 Systemd 插件时,Docker 容器可以通过 Systemd 单元文件来定义和管理运行在容器内的服务。这些服务可以由 Systemd 进程监控,并根据定义的配置进行自动启动、停止和重启。
Systemd 插件提供了以下功能:
- 容器内服务管理:通过 Systemd 单元文件定义和管理容器内的服务。
- 自动启动和重启:容器内的服务可以由 Systemd 进程自动启动,并在发生故障或容器重启时自动重启。
- 日志管理:Systemd 插件可以将容器内的服务日志转发到宿主机上的 Systemd 日志系统,使得容器内的日志可以与宿主机的系统日志进行集中管理和分析。
使用 Systemd 插件可以使得容器中的服务管理更加灵活和集成化,能够充分利用 Systemd 在系统级别的服务管理和监控功能。
请注意,Systemd 插件的使用可能需要特定的配置和环境支持。具体的安装和配置步骤可能因 Docker 版本和操作系统而异。建议参考 Docker 和相关网络插件的文档,以获取更详细的信息和配置指南。
修改步骤
要修改Docker的监听地址为本地127.0.0.1,不允许支持远程访问,需要编辑docker.service文件:
- 打开终端,输入以下命令以编辑docker.service文件:
vi docker.service
- 输入密码确认,然后在编辑器中添加以下内容:
[Service] ExecStart= ExecStart=/usr/bin/dockerd -H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock
保存并退出编辑器。
重新加载systemd配置:
sudo systemctl daemon-reload
- 重启Docker服务:
sudo systemctl restart docker.service
现在,Docker已经配置为仅允许本地访问。要使用Docker命令,需要在本地终端上运行它们。
总结
到此这篇关于Docker启动参数的文章就介绍到这了,更多相关Docker启动参数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
docker获取Let''s Encrypt永久免费SSL证书的方法
在本篇文章里小编给大家分享了一篇关于docker获取Let's Encrypt永久免费SSL证书的方法,以后需要的朋友们可以参考下。2021-01-01Windows11安装Docker Desktop教程的图文教程
本文主要介绍一下Windows11安装Docker Desktop教程的图文教程,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2024-10-10
最新评论