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

Docker 远程访问完整配置教程以及核心参数理解

Docker 远程访问完整配置教程

以下是配置 Docker 支持远程访问的完整教程,包括参数说明、配置修改、云服务器安全组设置、主机防火墙配置,以及验证远程访问的详细步骤。


1. 理解 -H fd:// 参数的作用(理解了以后容易理解后面的操作)

-H 参数用于指定 Docker 守护进程的监听方式(监听“门口”)。可以配置 Docker 监听:

  • Unix 套接字:如 unix:///var/run/docker.sock(本地通信)。
  • TCP 地址:如 tcp://0.0.0.0:2375(远程访问)。
  • 文件描述符(fd://:让 Docker 通过 systemd 管理监听方式。
什么是 -H fd://
  • fd:// 表示 File Descriptor(文件描述符)。
  • Docker 不直接监听具体地址或端口,而是通过 systemd 提供的文件描述符监听。
  • systemd 通常默认让 Docker 使用本地 Unix 套接字 unix:///var/run/docker.sock
形象比喻
  • 没有 -H fd://
    Docker 自己决定监听哪些“门”,比如监听本地套接字或远程端口。你明确告诉它:

    “去盯住这扇门,比如 2375 端口!”

  • 使用 -H fd://
    Docker 把选择监听方式的任务交给 systemd。Docker 对 systemd 说:

    “systemd,你安排门,我负责听谁敲门!”


2. 修改 Docker 配置

2.1 修改 docker.service 文件
  1. 编辑 Docker 服务文件:

    bashsudo nano /usr/lib/systemd/system/docker.service
    
  2. 查找以下行:

    bashExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
    
  3. 修改为:

    bashExecStart=/usr/bin/dockerd --containerd=/run/containerd/containerd.sock
    

    这里移除了 -H fd:// 参数,让 Docker 不再依赖 systemd 的监听方式。

  4. 保存并退出。


2.2 配置 daemon.json 文件

通过 /etc/docker/daemon.json 配置 Docker 监听本地和远程连接。

  1. 编辑 daemon.json 文件:

    bashsudo nano /etc/docker/daemon.json
    
  2. 添加以下内容:(registry 是docker加速器,在国外可以不管这个)

    json{"registry-mirrors": ["https://docker.1ms.run","https://docker.unsee.tech"],"hosts": ["unix:///var/run/docker.sock", "tcp://0.0.0.0:2375"]
    }
    
  3. 保存并退出。


2.3 重新加载并重启 Docker 服务
bashsudo systemctl daemon-reload
sudo systemctl restart docker

3. 配置云服务器安全组

对于云服务器(如阿里云、AWS、腾讯云),需要在安全组中开放 Docker 的远程访问端口(TCP 2375)。

  1. 登录云服务提供商管理控制台。
  2. 找到实例的 安全组 配置。
  3. 添加一条规则:
    • 协议:TCP
    • 端口范围:2375
    • 来源:根据需求设置(可选 0.0.0.0/0 或特定 IP 段)。
  4. 保存并应用规则。

4. 配置主机防火墙

如果服务器启用了防火墙(如 firewalld),需要显式开放 TCP 2375 端口。

4.1 检查防火墙状态
bashsudo systemctl status firewalld

如果防火墙未启用,可跳过本节。

4.2 开放 2375 端口
bashsudo firewall-cmd --zone=public --add-port=2375/tcp --permanent
4.3 重新加载防火墙
bashsudo firewall-cmd --reload
4.4 验证防火墙规则
bashsudo firewall-cmd --list-ports

确认 2375/tcp 端口已在列表中。


5. 验证远程访问

5.1 使用浏览器验证

在浏览器地址栏输入以下 URL:

http://<服务器IP>:2375/version

如果配置正确,会返回类似以下的 JSON 数据:
粘个图,嘿嘿
在这里插入图片描述

5.2 使用 Docker CLI 验证

在远程客户端执行以下命令:

bashdocker -H tcp://<服务器IP>:2375 info

如果配置正确,将返回 Docker 服务器的相关信息。


6. 安全性注意事项(没试过可选)

  1. 默认配置无加密或认证

    • Docker 的远程访问(TCP 2375)默认不启用加密或认证机制,存在安全隐患。
    • 开放 2375 后,任何访问到该端口的用户都能完全控制 Docker 守护进程。
  2. 推荐的安全措施

    • 使用 SSH 隧道:不直接开放 2375,而是通过 SSH 隧道访问 Docker:

      bashssh -L 2375:localhost:2375 user@<服务器IP>
      

      然后本地访问:

      bashdocker -H tcp://localhost:2375 info
      
    • 启用 TLS 加密: 为 Docker 配置 TLS,确保通信加密且客户端必须认证。具体配置可以参考 Docker 官方文档。

    • 限制来源 IP:通过安全组或防火墙仅允许可信 IP 访问 2375。


总结

通过本教程,完成 Docker 的远程访问配置,包括参数调整、安全组与防火墙配置,以及远程访问的验证。

相关文章:

Docker 远程访问完整配置教程以及核心参数理解

Docker 远程访问完整配置教程 以下是配置 Docker 支持远程访问的完整教程&#xff0c;包括参数说明、配置修改、云服务器安全组设置、主机防火墙配置&#xff0c;以及验证远程访问的详细步骤。 1. 理解 -H fd:// 参数的作用&#xff08;理解了以后容易理解后面的操作&#xff…...

王老吉药业SRM系统上线 携手隆道共启战略合作新篇章

12月27日&#xff0c;广州王老吉药业股份有限公司&#xff08;简称“王老吉药业”&#xff09;SRM项目上线启动会&#xff0c;在王老吉科普教育基地——“吉园”隆重举行。广药集团纪委主任陈耕、王老吉药业总工程师黄晓丹、隆道公司总裁吴树贵、项目经理赵耀、供应商代表郭伟及…...

MyBatis 配置文件全解析

一、MyBatis 配置文件为何至关重要&#xff1f; 在 Java 后端开发领域&#xff0c;MyBatis 作为一款广受欢迎的持久层框架&#xff0c;极大地简化了数据库操作。而 MyBatis 配置文件&#xff0c;恰似整个框架的 “神经中枢”&#xff0c;掌控着其运行的方方面面&#xff0c;对…...

unity学习6:unity的3D项目的基本界面和菜单

目录 1 unity界面的基本认识 1.1 file 文件 1.2 edit 编辑/操作 1.3 Assets 1.4 gameobject 游戏对象 1.5 组件 1.6 windows 2 这些部分之间的关系 2.1 关联1&#xff1a; Assets & Project 2.2 关联2&#xff1a;gameobject & component 2.3 关联3&#xf…...

企业二要素如何用C#实现

一、什么是企业二要素&#xff1f; 企业二要素&#xff0c;通过输入统一社会信用代码、企业名称或统一社会信用代码、法人名称&#xff0c;验证两者是否匹配一致。 二、企业二要素适用哪些场景&#xff1f; 例如&#xff1a;信用与金融领域 1.信用评级&#xff1a;信用评级…...

中科院空天院无人机视觉语言导航新基准!AeroVerse:模拟、预训练、微调和评估空中无人机具身世界模型的测试基准

作者&#xff1a; Fanglong Yao, Yuanchang Yue, Youzhi Liu, Xian Sun, Kun Fu 单位&#xff1a;中国科学院空天信息创新研究院网络信息系统技术重点实验室&#xff0c;中国科学院大学电子电气与通信工程学院 原文链接&#xff1a; AeroVerse: UAV-Agent Benchmark Suite fo…...

Python安装(新手详细版)

前言 第一次接触Python&#xff0c;可能是爬虫或者是信息AI开发的小朋友&#xff0c;都说Python 语言简单&#xff0c;那么多学一些总是有好处的&#xff0c;下面从一个完全不懂的Python 的小白来安装Python 等一系列工作的记录&#xff0c;并且遇到的问题也会写出&#xff0c…...

Oracle DG备库数据文件损坏修复方法(ORA-01578/ORA-01110)

今天负责报表的同事反馈在DG库查询时出现如下报错 ORA-01578:ORACLE数据块损坏(文件号6,块号 2494856)ORA-01110:数据文件6: /oradata/PMSDG/o1 mf users_molczgmn_.dbfORA-26040:数据块是使用 NOLOGGING 选项加载的 可以看到报错是数据文件损坏&#xff0c;提示了file id和b…...

安装Linux

在Linux系统上安装MySQL数据库&#xff0c;可以根据服务器是否有网络连接选择不同的安装方式。以下分别介绍在线安装&#xff08;通过yum&#xff09;和离线安装&#xff08;手动下载.tar包&#xff09;的详细步骤&#xff1a; 一、在线安装&#xff08;通过yum&#xff09; 检…...

【文献精读笔记】Explainability for Large Language Models: A Survey (大语言模型的可解释性综述)(四)

****非斜体正文为原文献内容&#xff08;也包含笔者的补充&#xff09;&#xff0c;灰色块中是对文章细节的进一步详细解释&#xff01; 四、提示范式&#xff08;Explanation for Prompting Paradigm&#xff09; 随着语言模型规模的扩大&#xff0c;基于提示&#xff08;prom…...

【OpenCV】使用Python和OpenCV实现火焰检测

1、 项目源码和结构&#xff08;转&#xff09; https://github.com/mushfiq1998/fire-detection-python-opencv 2、 运行环境 # 安装playsound&#xff1a;用于播放报警声音 pip install playsound # 安装opencv-python&#xff1a;cv2用于图像和视频处理&#xff0c;特别是…...

SpringCloud(二)--SpringCloud服务注册与发现

一. 引言 ​ 前文简单介绍了SpringCloud的基本简介与特征&#xff0c;接下来介绍每个组成部分的功能以及经常使用的中间件。本文仅为学习所用&#xff0c;联系侵删。 二. SpringCloud概述 2.1 定义 ​ Spring Cloud是一系列框架的有序集合&#xff0c;它巧妙地利用了Spring…...

国内Ubuntu环境Docker部署CosyVoice

国内Ubuntu环境Docker部署CosyVoice 本文旨在记录在 国内 CosyVoice项目在 Ubuntu 环境下如何使用 dockermin-conda进行一键部署。 源项目地址&#xff1a; https://github.com/FunAudioLLM/CosyVoice 如果想要使用 dockerpython 进行部署&#xff0c;可以参考我另一篇博客中的…...

嵌入式linux系统中QT信号与槽实现

第一:Qt中信号与槽简介 信号与槽是Qt编程的基础。因为有了信号与槽的编程机制,在Qt中处理界面各个组件的交互操作时变得更加直观和简单。 槽函数与一般的函数不同的是:槽函数可以与一个信号关联,当信号被发射时,关联的槽函数被自动执行。 案例操作与实现: #ifndef …...

科研绘图系列:R语言单细胞数据常见的可视化图形

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据数据预处理图1图2图3图4图5图6系统信息参考介绍 单细胞数据常见的可视化图形 因为本教程是单细胞数据,因此运行本画图脚本需要电脑的内存最少32Gb 加载…...

使用 C++ 和函数式编程构建高效的 AI 模型

引言 现代 AI 开发常常使用 Python&#xff0c;但在底层实现中&#xff0c;C 仍是不可或缺的语言&#xff0c;尤其是在性能敏感的场景下。将 C 与函数式编程结合&#xff0c;可以打造高效、模块化的 AI 模型&#xff0c;同时提高代码的可读性和可维护性。本文将深入探讨如何利用…...

guestfish/libguestfs镜像管理工具简介

文章目录 简介guestfishlibguestfs项目 例子原理代码libguestfs架构参考 简介 guestfish Guestfish 是libguestfs项目中的一个工具软件&#xff0c;提供修改虚机镜像内部配置的功能。它不需要把虚机镜像挂接到本地&#xff0c;而是为你提供一个shell接口&#xff0c;你可以查…...

如何在centos中进行有效的网络管理

如何在centos中进行有效的网络管理&#xff1f; 在CentOS中&#xff0c;网络管理是系统管理员日常工作的重要组成部分&#xff0c;本文将详细介绍CentOS中的两种主要网络管理工具&#xff1a;传统的network服务和新一代的NetworkManager&#xff0c;帮助读者更好地配置和管理C…...

Oracle清空表后如何恢复数据

有时候忘记备份数据&#xff0c;把数据清空了&#xff0c;或者删除了&#xff0c;这时候怎么恢复数据呢&#xff0c;使用下面sql即可&#xff0c;替换对应的table和column INSERT INTO table1(column1,column2,column3 ) SELECTcolumn1,column2,column3 FROMtable1 AS OF time…...

ElasticSearch基础-文章目录

ElasticSearch学习总结1&#xff08;环境安装&#xff09; ElasticSearch学习总结2&#xff08;基础查询&#xff09; ElasticSearch学习总结3&#xff08;.NetCore操作ES&#xff09; ElasticSearch学习总结4&#xff08;sql操作ES&#xff09; ElasticSearch学习总结5&am…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

Spring Boot面试题精选汇总

&#x1f91f;致敬读者 &#x1f7e9;感谢阅读&#x1f7e6;笑口常开&#x1f7ea;生日快乐⬛早点睡觉 &#x1f4d8;博主相关 &#x1f7e7;博主信息&#x1f7e8;博客首页&#x1f7eb;专栏推荐&#x1f7e5;活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

C++.OpenGL (14/64)多光源(Multiple Lights)

多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

使用Spring AI和MCP协议构建图片搜索服务

目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式&#xff08;本地调用&#xff09; SSE模式&#xff08;远程调用&#xff09; 4. 注册工具提…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...