#docker版本:18.09.0,最好保证客户端端口和服务端端口相同

[root@Centos7 ~]# dockerd-ce -v
Docker version 18.09., build 4d60db4
网络环境概述

server:192.168.100.7:  

client:192.168.100.8

#docker默认只提供本地unix,sock文件的连接方式,让docker能够监听tcp端口还需要进行一些配置。

1.跳转docker启动文件,定义启动时执行的参数。

#dockerd -H 参数指定docker应用程序监听方式。当然,socket文件位置,2375端口都可以自行更改,socket文件位置更改的话,使用docker命令时也需要调整一些参数,连接时会有说明。

[root@server system]# cat /lib/systemd/system/docker.service   |grep "ExecStart" --color
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375

2.调整配置后重启docker服务,并观察端口是否监听

[root@server ~]# systemctl  restart docker
[root@server ~]# ss -lt |grep
LISTEN ::: :::*

3.telnet服务端2375端口测试

[root@client ~]# telnet 192.168.100.7
Trying 192.168.100.7...
Connected to 192.168.100.7.
Escape character is '^]'.
^]
telnet> quit

#如果telnet不通,可能是server端防火墙存在限制,添加下方规则后在测试连接。

[root@server ~]# iptables -I INPUT -ptcp --dport  -j ACCEPT

#在client端连接服务端并执行命令

1.tcp连接

#你在使用docker连接时,可能会遇到下面问题:first path segment in URL cannot contain colon

#ps 为在server端执行的命令

[root@client ~]# docker -H 192.168.100.7:  ps
parse 192.168.100.7:: first path segment in URL cannot contain colon

#将上面命令更改为下面命令即可。

[root@client ~]# docker -H tcp://192.168.100.7:2375  ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

2.unix socket文件连接。

#同理,如果你更改了sock文件的位置,通过本机的socket文件连接时也要指定socket文件位置。

[root@server ~]# docker -H unix:///var/run/docker.sock  ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

CentOS7 docker开启tcp端口并进行客户端远程连接的更多相关文章

  1. docker开启2376端口CA认证及IDEA中一键部署docker项目

    嘿,大家好,今天更新的内容是docker开启2376端口CA认证及IDEA中一键部署docker项目... 先看效果 我们可以通过idea一键部署docker项目,还以通过idea的控制台实时查看容器 ...

  2. (转)SqlServer2008开启客户端远程连接

    原文地址:http://wenku.baidu.com/link?url=MiiJG0SKUUAb3kzrrQtdx0zGIDpsGa7vcGlzqIDe7qcFx5NJ4UlVoPIswxZCHMo ...

  3. SQLServer 2005客户端远程连接sql2008 数据库服务器

    SQL2005客户端远程连接sql2008 数据库服务器 by:授客 QQ:1033553122 准备工作: 客户端所在pc机配置: 配置数据源 控制面板-管理工具-ODBC数据源-系统DSN-添加- ...

  4. ems lite 客户端远程连接mysql server

    在本地用ems客户端远程连接虚拟机上的mysql server,弹出客户端没有权限访问mysql server.使用下面方法进行设置:mysql> select host,user,passwo ...

  5. Centos7防火墙开启3306端口

    CentOS7的默认防火墙为firewall,且默认是不打开的. systemctl start firewalld # 启动friewall systemctl status firewalld # ...

  6. 设置CentOS里的Mysql开启客户端远程连接

    CentOS系统安装好MySQL后,默认情况下不支持用户通过非本机连接上数据库服务器,下面是解决方法: 1.在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的 ...

  7. 客户端远程连接docker容器中的mysql 报1251错误

    1.启动容器: [root@localhost ~]# docker run -d -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql2.进入容器: [r ...

  8. Sql Server 2005的1433端口打开和进行远程连接

    参考地址:http://topic.csdn.net/u/20090828/16/e693935a-99b7-4090-a6bc-0123c91183eb.html 1.如何打开sql server  ...

  9. 不安装Oracle客户端远程连接Orcale数据库

    本方法是通过使用ORACLE官方提供的精简版客户端,即绿色免安装的客户端. 下载地址(此处提供的是官方各版本下载地址): Windows 32位系统中使用的客户端下载地址其他系统环境中使用的客户端下载 ...

随机推荐

  1. 【大数据】SmallFile-Analysis-Script

    1.root账号先在namenode节点上配置一个定时任务,将fsimage定时传到其他客户机上进行操作 whereis hadoop命令确定安装目录,然后去配置文件找到namenode节点(data ...

  2. Java实现 Cookie的生成与读取

    今天学习的时候发现Cookie挺有意思的,就自己网上找点例子,自己敲点代码熟练下,现在就记录下来,分享一下. 什么是cookie?? Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服 ...

  3. flask的配置项及获取

    1 修改/新增配置项的3种方法 # 配置参数的使用方式 # 1. 使用配置文件 # app.config.from_pyfile("config.cfg") # 2. 使用对象配置 ...

  4. MYSQL查询练习 1

    -- 查询练习 1------------ CREATE TABLE stu ( sid ), sname ), age INT, gender ) ); , 'male'); , 'female') ...

  5. bcb ole拖拽功能的实现

    最近项目中用到了OLE 拖拽功能 和BCB 一个Form的Drag 不同的是,只有实现了OLE 拖拽才能,从其他程序拖拽数据到Form 下面的代码实现了,同HTML网页拖拽到Form时,Form获得H ...

  6. 使用 webpack-bundle-analyzer 分析 webpack 代码库拆分块

    github:https://github.com/webpack-contrib/webpack-bundle-analyzer 1.安装: cnpm install webpack-bundle- ...

  7. httprunnermanager环境搭建 -----转

    转发自  https://www.cnblogs.com/tiechui2015/p/10017801.html  感谢大神 1,开源代码下载 这里的git下载地址是:https://github.c ...

  8. .NET Core 3时代DevExpress Winforms v19.2增强TreeList控件

    DevExpress Winforms Controls内置140多个UI控件和库,完美构建流畅.美观且易于使用的应用程序.无论是Office风格的界面,还是分析处理大批量的业务数据,DevExpre ...

  9. C/C++系列之复杂引用

    以struct类型为例: 引用 #include"iostream" #include<string> using namespace std; struct myco ...

  10. RedisTemplate 中 opsForHash()使用 (没有测试过,copy的)

    1.put(H key, HK hashKey, HV value) //新增hashMap值 redisTemplate.opsForHash().put("hashValue" ...