如何开放2375和2376端口供Docker daemon监听

打印 上一主题 下一主题

主题 1114|帖子 1114|积分 3342

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Linux (以 Ubuntu 为例)

1. 修改 Docker 设置文件



  • 打开 Docker 的设置文件 /etc/docker/daemon.json。如果该文件不存在,则可以创建一个新的。

bash
  1. sudo nano /etc/docker/daemon.json
复制代码



  • 在设置文件中添加以下内容:

json
  1. {
  2.   "hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2375", "tcp://0.0.0.0:2376"]
  3. }
复制代码



  • 这里,"unix:///var/run/docker.sock" 表现利用 Unix 套接字,"tcp://0.0.0.0:2375" 和 "tcp://0.0.0.0:2376" 表现让 Docker daemon 监听 2375 和 2376 端口,并允许来自任何 IP 地址(0.0.0.0)的毗连。
2. 重启 Docker 服务



  • 保存设置文件后,需要重启 Docker 服务以使设置生效:

bash
  1. sudo systemctl restart docker
复制代码
3. 查抄端口是否开放



  • 你可以利用 netstat 命令查抄 Docker daemon 是否正在监听这些端口:

bash
  1. sudo netstat -tuln | grep 2375
  2. sudo netstat -tuln | grep 2376
复制代码
Windows

1. 打开 Docker Desktop 设置



  • 右键点击 Docker Desktop 图标,选择 Settings。
2. 进入 Docker Engine 设置



  • 在左侧导航栏中,点击 Docker Engine。
3. 设置监听端口



  • 在设置文件中添加或修改以下内容:

json
  1. {
  2.   "hosts": ["npipe://", "tcp://0.0.0.0:2375", "tcp://0.0.0.0:2376"]
  3. }
复制代码



  • 确保利用双引号将设置项括起来,并且每个设置项之间利用逗号分隔。
4. 应用并重启 Docker



  • 点击 Apply & Restart 按钮,让 Docker 应用新的设置并重启。
安全考虑




  • 2375 端口:该端口通常用于未加密的 Docker 长途 API 访问。开放该端口可能会带来安全风险,因为它允许未加密的毗连,攻击者可能会在网络上窃取信息或执行未经授权的操作。
  • 2376 端口:这个端口通常用于安全的 Docker 长途 API 访问,需要设置 TLS 证书以确保安全通信。如果要利用 2376 端口,你需要生成并利用 TLS 证书,以下是基本步骤:

    • 生成证书和密钥:


bash
  1. openssl genrsa -aes256 -out ca-key.pem 4096
  2. openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
  3. openssl genrsa -out server-key.pem 4096
  4. openssl req -subj "/CN=localhost" -sha256 -new -key server-key.pem -out server.csr
  5. openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
复制代码


  • 将生成的证书和密钥添加到 /etc/docker/daemon.json 中:

json
  1. {
  2.   "hosts": ["tcp://0.0.0.0:2376"],
  3.   "tlsverify": true,
  4.   "tlscacert": "/path/to/ca.pem",
  5.   "tlscert": "/path/to/server-cert.pem",
  6.   "tlskey": "/path/to/server-key.pem"
  7. }
复制代码


  • 重启 Docker 服务。

注意事项



  • 对于生产环境,强烈建议利用 2376 端口并设置 TLS 证书,以确保 Docker 长途 API 的安全性。
  • 开放这些端口可能会将 Docker 保卫进程暴露在网络上,要确保你的网络环境是安全的,大概利用防火墙规则来限制对这些端口的访问。

通过上述步骤,你可以在不同操作系统上设置 Docker daemon 监听 2375 和 2376 端口,并根据需要进行安全加固。

扩展阅读:
【容器技术系列】探索篇: 探索多方式创建容器的神奇之旅

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

笑看天下无敌手

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表