开启Docker的TCP通信端口方式

 更新时间:2023年08月08日 09:32:21   作者:inthirties  
这篇文章主要介绍了开启Docker的TCP通信端口方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

开启Docker的TCP通信端口

Docker Engine提供RestFul API, Docker Cli通过Restful API和Docker Daemon进行交互,默认情况下,docker cli通过unix通道文件和Daemon进程进行交互,也可以通过docker cli里的

  • --host参数指定,需要通信的Docker远端机器进行交互 
  • --host参数指定,需要进行连接的Docker daemon的监听端口

默认情况下,Docker的socket tcp端口是没有打开的,只提供本地的unix的通道文件的通信方式。

今天给大家介绍的就是,如何打开Docker的socket通信方式。 在爱上开源之DockerUI系列视频里,给大家介绍DockerUI来进行Docker管理的时候也提到过,这样的启动方式。

修改启动文件

找到启动文件,修改启动文件的运行参数,使其支持TCP通信方式;Docker Daemon应用的方式不同,启动的途径也各不相同,

在Centos7或者以上的Docker环境里

在这个环境下,Docker是通过Systemclt里的服务进行启动的, 在这个环境下,我们就需要修改Docker的启动的service。  

[root@CENTOS-01 ~]# systemctl status docker
● docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2022-03-25 05:30:16 CST; 3h 7min ago
     Docs: https://docs.docker.com
 Main PID: 315761 (dockerd)
    Tasks: 47
   Memory: 75.8M
   CGroup: /system.slice/docker.service
           └─315761 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375

通过命令可以找到docker服务的启动文件路径: /usr/lib/systemd/system/docker.service

[root@CENTOS-01 ~]# vi /usr/lib/systemd/system/docker.service

如下加入

-H tcp://0.0.0.0:2375

重启服务

[root@CENTOS-01 ~]# systemctl daemon-reload
[root@CENTOS-01 ~]# systemctl restart docker

其他系统

docker@boot2docker:~$ vi /etc/init.d/docker

开启DOCKER_REMOTE = yes

修改后,重新启动服务

docker@boot2docker:~$ /etc/init.d/docker restart 

记得,开启TCP以后,记得把相关端口的访问防火墙开启。

注意:

通过上面的方法,就已经可以开启docker daemon的tcp通信端口进行通信, dockerUI也可以通过--endpoint的指定, 来访问远端的Docker节点了。

Docker TCP端口开放

CentOS7 通用版

cat > /etc/systemd/system/docker.service.d/tcp.conf <<EOF
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375
EOF

注意: -H fd:// 仅Ubuntu可用,我就被这个坑了好久。

systemctl daemon-reload
systemctl restart docker

验证

netstat -an | grep 2375

一切OK。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Docker run流程及镜像的基本命令详解

    Docker run流程及镜像的基本命令详解

    本文主要介绍了Docker中run流程及镜像的基本命令,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • Docker部署Web在线版的PPT应用程序PPTist

    Docker部署Web在线版的PPT应用程序PPTist

    PPTist作为一款开源的Web应用程序,无需安装、跨平台且支持实时协作的幻灯片制作,本文介绍了如何使用Docker部署Web在线版的PPTist,包括本地环境规划、检查、下载PPTist镜像、部署PPTist应用以及访问PPTist首页的步骤
    2025-02-02
  • Docker安装node-red、导入节点、部署查看的步骤详解

    Docker安装node-red、导入节点、部署查看的步骤详解

    Node-RED设计使用的场景是IoT,但是作为一个流编排引擎,显然它能做的事情更多,比如使用容器化的方式进行构建、打包、部署等操作也是可行的,这篇文章继续介绍Docker安装node-red、导入节点、部署查看的相关知识,感兴趣的朋友一起看看吧
    2022-01-01
  • Docker Machine深入学习

    Docker Machine深入学习

    Docker与Docker Machine 的区别?又如当我们执行docker-machine create命令时,Docker Machine都做了些什么?这篇文章都会告诉大家,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 如何清理docker的overlay2 目录

    如何清理docker的overlay2 目录

    本文介绍了如何清理Docker的overlay2目录,包括确认overlay2目录的位置、清理未使用的容器和镜像、手动清理overlay2目录、清理日志文件、限制日志大小以及检查磁盘空间,感兴趣的朋友一起看看吧
    2025-03-03
  • Docker实现进入容器内部的方法

    Docker实现进入容器内部的方法

    这篇文章主要介绍了Docker实现进入容器内部的方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • 使用docker构建一个redis镜像的方法详解

    使用docker构建一个redis镜像的方法详解

    Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value型NoSQL数据库,本文介绍了docker创建redis镜像的方法,分享给大家,需要的朋友可以参考下
    2024-06-06
  • Docker上部署FastApi的示例代码

    Docker上部署FastApi的示例代码

    本文主要介绍了Docker上部署FastApi的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • 一文详解如何修改Docker的默认存储路径

    一文详解如何修改Docker的默认存储路径

    这篇文章主要介绍了关于如何修改Docker的默认存储路径的相关资料,默认安装的情况下,会使用 /var/lib/docker/ 目录作为存储目录,用以存放拉取的镜像和创建的容器等,这个路径是系统存储目录,一般空间会比较小,需要的朋友可以参考下
    2023-08-08
  • 如何修改docker容器中MySQL的用户密码

    如何修改docker容器中MySQL的用户密码

    本文主要介绍了如何修改docker容器中MySQL的用户密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04

最新评论