docker daemon远程连接设置详解

Docker为C/S架构,服务端为docker daemon,客户端为docker.service.支持本地unix socket域套接字通信与远程socket通信。默认为本地unix socket通信,要支持远程客户端访问需要做如下设置(仅用于测试,生产环境开启会极大增加不安全性:由于开了监听端口,任何人可以通过远程连接到docker daemon服务器进行操作):

1、设置daemon监听连接:

添加本地默认监听端口,模式为IP:port

Ubuntu:

修改daemon配置:/etc/docker/daemon.json,添加如下行:

代码如下:

{"hosts": ["fd://", "tcp://0.0.0.0:2375"]}(需要花括号,如果有多行设置,每行都需要花括号,设置了fd://自动便是unix socket

重启docker:

systemctl restart docker.service(Ubuntu16.04) 

查看有了“-H”表示成功

root@ubuntu:~# ps aux|grep dockerd
root   113731 0.5 0.1 636160 47536 ?    Ssl 10:54  0:00 /usr/bin/dockerd -H unix:///var/ -H tcp://0.0.0.0
root@ubuntu:~# netstat -lant|grep 2375
tcp6    0   0 :::2375         :::*          LISTEN

Centos7:

/etc/docker/daemon.json会被docker.service的配置文件覆盖,直接添加daemon.json不起作用。可以有如下几种设置:

1、直接编辑配置文件:Centos中docker daemon配置文件在/lib/systemd/system/docker.service,找到以下字段,在后面添加如下,注意,此处不能用"fd://",否则报错

...
[Service]
...
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375 

执行

systemctl daemon-reload
systemctl restart docker.service 

2、systemctl edit docker.service,或者编辑vim /etc/systemd/system/docker.service.d/override.conf(必须这样,少一行都不行,unix://也不能按官方写fd://)

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375 

同样执行

systemctl daemon-reload
systemctl restart docker.service 

最后查看是否成功,添加了-H参数,启动了端口(端口默认为2375,但是可以改):

[root@myrepo docker.service.d]# ps aux|grep dockerd
root   5567 8.0 2.0 632976 37696 ?    Ssl 15:08  0:00 /usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock
root   6143 0.0 0.0 112660  976 pts/0  S+  15:08  0:00 grep --color=auto dockerd
[root@myrepo docker.service.d]# netstat -lant|grep 2376
tcp6    0   0 :::2376         :::*          LISTEN 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 解决执行docker daemon命令时出错的问题

    最近在工作中遇到了一个问题,在一开始执行docker daemon命令时总是会出错导致进程stop,按照网上的方法在/etc/fstab文件里添加了一行 none /sys/fs/cgroup cgroup defaults 0 0 这时Docker daemon可以起来了,但是有了新的问题--执行docker run命令时出现"no left space on device"字样的错误: 后来又使用apt-get update&&apt-get upgrade升级了包

  • Docker出现Cannot connect to the Docker daemon. Is the docker daemon running on this host错误解决办法

    Docker出现Cannot connect to the Docker daemon. Is the docker daemon running on this host错误解决办法 发生现象: ubuntu15下,安装完Docker后,运行docker images 报错Cannot connect to the Docker daemon. Is the docker daemon running on this host? 如下图 图 原因分析: 目前我遇到这个问题是两个原因造成的,一个

  • Docker daemon 无法启动: does not match with stored UUID错误解决办法

    Docker daemon 无法启动: does not match with stored UUID错误 最近做项目,遇到Docker daemon 无法启动: does not match with stored UUID错误的问题,经过上网查找资料解决了问题,这里记录下解决办法. Docker 默认使用loop设备存储镜像.使用/var/lib/docker存储.但是当根分区不够大的时候(Centos7默认安装只有50G),那就麻烦了. 这里提供下修改方法(以centos7操作系统为例):

  • ubuntu vps安装docker报错:Cannot connect to the Docker daemon at unix:///var/run/docker.sock.问题解决

    问题发现 最近在工作中需要用到docker,找了一些教程便兴致冲冲的安装: wget -qO- https://get.docker.com/ | sh 然后 docker info 输出: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 通过 service docker restart 尝试没有变化, 查看 docker 的日志 tail -5f

  • docker daemon远程连接设置详解

    Docker为C/S架构,服务端为docker daemon,客户端为docker.service.支持本地unix socket域套接字通信与远程socket通信.默认为本地unix socket通信,要支持远程客户端访问需要做如下设置(仅用于测试,生产环境开启会极大增加不安全性:由于开了监听端口,任何人可以通过远程连接到docker daemon服务器进行操作): 1.设置daemon监听连接: 添加本地默认监听端口,模式为IP:port Ubuntu: 修改daemon配置:/etc/do

  • Docker远程连接设置的实现示例

    目录 环境信息 设置 Ubuntu上的设置 开启Docker远程连接后,在开发和学习时都能带来便利,但请不要将此方式用在外部网络环境,以免带来安全问题,下图是官方警告: 环境信息 本次实战先在CentOS上的Docker设置,再在Ubuntu上也设置,首先要实战的CentOS环境信息如下: 操作系统:CentOS Linux release 7.6.1810 Docker:1.13.1, build b2f74b2/1.13.1 设置 1.编辑此文件:/lib/systemd/system/do

  • 树莓派3B+安装64位ubuntu系统和docker工具的操作步骤详解

    想在树莓派3B上安装一些64位应用(例如64位JDK),因此首先要安装64位的操作系统,今天咱们就一起来实战: 原文地址:https://blog.csdn.net/boling_cavalry/article/details/80716098 环境要求一台树莓派3B设备:网络环境是内网,需要有线网络和网线一根:当树莓派通过网线连接到内网后,能够在路由器管理软件上查到树莓派的IP,例如我用的是小米路由器,通过路由器管理页面或者小米路由器的APP就能看到树莓派的接入情况:读卡器:电脑一台,系统是w

  • MySQL binlog 远程备份方法详解

    以前备份binlog时,都是先在本地进行备份压缩,然后发送到远程服务器中.但是这其中还是有一定风险的,因为日志的备份都是周期性的,如果在某个周期中,服务器宕机了,硬盘损坏了,就可能导致这段时间的binlog就丢失了. 而且,以前用脚本对远程服务器进行备份的方式,有个缺点:无法对MySQL服务器当前正在写的二进制日志文件进行备份.所以,只能等到MySQL服务器全部写完才能进行备份.而写完一个binlog的时间并不固定,这就导致备份周期的不确定. 从MySQL5.6开始,mysqlbinlog支持将

  • Linux Docker安装wordpress的方法详解教程

    安装mysql服务 下载mysql镜像: docker pull mysql 创建mysql容器并后台运行,指定数据库密码是123456.-e指定环境变量. docker run --name mysql_db -e MYSQL_ROOT_PASSWORD=123456 -d mysql 使用官方的wordpress wordpress镜像daocloud.io: docker pull daocloud.io/daocloud/dao-wordpress:latest 拉取镜像前请先登录: d

  • Docker(黑马spring cloud笔记)详解

    目录 介绍和安装 安装 启动 镜像加速 Docker基本操作 镜像操作 容器操作 数据卷操作 Dockerfile 镜像结构 Dockerfile Docker-Compose 安装 基本命令 Docker 私 服搭建 练习 练习1:save和load 练习2:docker部署nginx 练习3:部署MySQL 练习4:基于Ubuntu构建一个新镜像,运行一个java项目 练习5:部署微服务集群 问题:微服务注册失败 介绍和安装 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从

  • SpringCloud Feign远程调用实现详解

    目录 1. Feign远程调用 1.1.Feign替代RestTemplate 1.2.自定义配置 1.2.1.配置文件方式 1.2.2.Java代码方式 2.Feign使用优化 3. 最佳实践 3.1.继承方式 3.2.抽取方式 3.3.实现基于抽取的最佳实践 先来看我们以前利用RestTemplate发起远程调用的代码: 存在下面的问题: 代码可读性差,编程体验不统一 参数复杂URL难以维护 1. Feign远程调用 Feign是一个声明式的http客户端,官方地址:https://gith

  • Docker的理解和基本命令详解

    如何通俗解释D ocker是什么? Docker思想来自于集装箱,集装箱解决了什么问题呢?比如,在一艘大船上,要把各种各样的货物要整理起来,集装箱(Docker)就可以做到,并且相互间不会影响.就不需要指定运输的船了(这个船运吃的那个船运穿的).只要把货物装在集装箱里封装好,就可以用一艘大船把他们都运走. 1.Docker就是类似的理念.云计算是运输船,Docker就是集装箱. 1.不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的

  • win2008 R2 WEB环境配置之Mssql Server 2008 R2 安装图文教程及远程连接设置方法

    Microsoft® SQL Server™ 是用于电子商务.业务线和数据仓库解决方案的数据库管理和分析系统.是微软旗下的商业数据库软件.目前最新的版本已经发展到SQL Server 2014了,微软更是推出了Windows Azure SQL云数据库. 本篇的教程的目的就是带领大家安装一下Sql server 2008 R2,对每一步作一个大概的说明,说得不好的地方,请大家指出来,大家共同进步. 这台服务器是天翼云的1元主机,买来就是给大家做教程用的.如果大家觉得好,请多多关注本博客. 安装步

  • Docker核心原理之 Cgroup详解

    内核中强大的工具cgroup,不仅可以限制被NameSpace隔离起来的资源,还可以为资源设置权重,计算用量等 什么是cgroup cgroup全称是control groups control groups:控制组,被整合在了linux内核当中,把进程(tasks)放到组里面,对组设置权限,对进程进行控制.可以理解为用户和组的概念,用户会继承它所在组的权限. cgroups是linux内核中的机制,这种机制可以根据特定的行为把一系列的任务,子任务整合或者分离,按照资源划分的等级的不同,从而实现

随机推荐