Tag: networking应用程序

在boot2docker / docker-machine上保留mtu设置

我有一个主机系统,通过docker docker-machine安装了多个virtualbox boot2docker-vms。 当我在无线networking中时,mtu-size不够低,导致在vms内拉取图像或执行其他基本命令时出现错误。 为了解决这个问题,我必须将mtu设置为比默认设置更低的设置。 但是,由于boot2docker-images在每次重新启动后都会被重置,因此mtu也会被重置,而且我还没有find办法,通过ssh更新每个虚拟机并每次更改。 我怎样才能坚持mtu变化的vms? 我宁愿不重buildboot2docker-images,这将迫使我在每次升级后重build它们。

docker覆盖networking创build过程中如何避免竞争条件?

我有两台机器HostA和HostB与领事和docker守护程序正确configuration,以便我可以使用docker network create -d overlay sharednet 我有一个TestScript.sh来检查networking是否存在,如果不是创buildnetworking。 这个脚本在HostA和HostB上都可用。 我也只有A上有一个MasterScript.sh ,它基本上只是在每台机器上调用TestScript.sh 。 运行我的MasterScript.sh ,我看到一个令人惊讶的结果,两个同名的networking被创build了! 这可以说是一个docker守护进程同步问题。 [HostA]# docker network ls NETWORK ID NAME DRIVER ad492bba9efa sharednet overlay ba53d4e7b739 sharednet overlay [HostB]# docker network ls NETWORK ID NAME DRIVER ad492bba9efa sharednet overlay ba53d4e7b739 sharednet overlay 预期的行为是,当我在HostA上创build一个networkingtestnw ,然后在HostB上,我应该看到这样的东西 [HostB]# docker network ls 68994f95cd67 testnw overlay [HostB]# docker network create […]

dockernetworking连接到主机的第二个接口

我有一个用例,我的Docker容器的第二个接口需要共享主机第二个networking接口的接口。 这可能使用docker network connect ? 如果是的话,将如何做?

Docker到VMnetworking

我们一直在将系统的一部分迁移到更多以微服务为导向的架构。 为了运行这个,我们select运行它们作为docker容器。 目前我们的架构如下: a)几个Web服务器,托pipe仍然庞大的PHP应用程序 b)3个新的虚拟机,将运行 “提醒”微服务 一个mongo数据库实例 自定义微服务registry(基于redis) 所以,我的问题如下: 我们目前的基础设施都在10.0.0.0/24范围内。 Docker在172.x.1.x范围内创build实例。 我如何让Web服务器(运行于10.0.0.0/24 )连接到在“registry”上注册的服务,例如172.17.1.3 (例如)? 我读过很多扩展,比如swarm,compose等。但是这些似乎并不能解决networking问题。 你可能会说:“你已经在警报服务上暴露了相关的端口,只是连接到这个虚拟机的IP地址”,但问题是,当服务(即Docker容器内的NodeJS应用程序)启动时,它会注册其暴露的端口与服务“registry”。 registry使用请求的IP地址来build立一种path。 所以服务启动,并在“registry”中注册为172.17.1.5:3001 。 如果这是唯一的方法,是否没有办法获得服务的主机 IP地址? 有什么build议么? 希望这是有道理的! 谢谢你的帮助!

克隆gerrit项目到我的主机上

我正在docker上运行gerrit。 我从dockerhub获得了图像。 我正在这样运行: docker run -it -p 8080:8080 -p 29418:29418 –rm -e AUTH_TYPE='DEVELOPMENT_BECOME_ANY_ACCOUNT' -v /home/gerrit-site:/home/gerrit/site -v /root/.ssh/id_rsa.pub:/root/.ssh/id_rsa.pub -v /root/.ssh/id_rsa:/root/.ssh/id_rsa -v /home/accounts/ssh-keys/:/home/gerrit/ssh-keys –name gerrit docker.io/fabric8/gerrit:latest 该图像正在运行,我可以通过url,即IP:8080访问它。当我尝试通过http创build的任何项目,它的作品,我得到一个克隆回购在我的主机上。 但是当我通过SSH尝试克隆时,出现以下错误, Cloning into 'project'… ssh: connect to host host_ip port 29418: Connection refused fatal: Could not read from remote repository. Please make sure you have the correct access rights and […]

如何在Docker中永久在用户定义的networking中设置DNS名称服务器?

我需要在/etc/resolv.conf用户定义的networking中定义名称服务器。 我知道这个指令–dns在docker引擎的默认桥中工作。 但是我创build了用户定义的networking。

Docker提供的IP地址与主机处于同一级别,类似于VM桥接networking

我想分配IP地址到我的docker容器,在物理主机的同一级别。 即如果主机的IP地址是192.168.1.101,我想给docker container的IP地址192.168.1.102,103,104等 基本上我正在寻找一个类似于VMWare / Virtualbox等桥接networking的function。 任何想法我们可以怎么做呢?

在没有特权模式的Docker环境中操作Docker中的容器之间的networkingstream量?

在Docker容器在其他Docker容器内部运行的环境中(通过安装Docker套接字,而不是以特权运行),是否有任何方式来操纵networking来执行如下操作: 引入延迟 丢弃数据包的百分比 带宽上限 我只对docker-py容器中的docker-dockerstream量感兴趣。 我不在乎操纵其他stream量,如docker到本地或docker到互联网。 在很多方面,只有操纵docker泊车networkingstream量才是理想的。 在以下情况下运行时,即使在Docker容器中也有很多方法可以执行此操作: 特权模式 传递–cap-add=NET_ADMIN标志运行时 一些实用程序(iptables,tc和使用它们实现的各种库)允许这样做。 但是,由于“主机”容器没有以特权模式启动,所有这些都需要比我的环境中更高的权限。 我无法控制系统configuration。 我必须在另一个容器内运行这些容器,而不是以特权模式启动。 如果我能改变这一点,这将是直截了当的,因为我可以使用上面列出的任何工具。 所有的容器都连接到一个由docker network create foobar创build的docker network create foobar 。 我的应用程序,用Python3.4编写,在OSX上使用docker-py。 是否有任何方法来操纵docker到dockernetworking的特性,以引入延迟,数据包丢弃等networking?

无法将Docker容器连接到编织networking

我正在尝试使用Weave覆盖networking连接不同主机上的两个Docker容器。 在我的第一台主机上,我可以连接到编织networking,没有任何问题。 但是在另一台主机上,我的命令行冻结,每当我试图运行一个容器与该networking,或者当我试图将现有的容器附加到该networking稍后。 这些是我正在使用的命令: docker run -id –name test_container –net=weave test_img 和: docker run -id –name test_container test_img weave attach test_container 在这两种情况下,命令行都是阻塞的, ctrl+c不能停止命令。 当我closuresterminal并打开一个新的,我可以看到容器,当我执行docker ps -a 。 但是当我想开始的时候,同样的事情又会发生。 有任何想法吗?

连接Docker容器

你好有帮助的开发者, 我有问题连接docker集装箱。 我已经build立了一个subversion docker容器和一个mongo docker容器。 docker run -d -p 3343:3343 -p 4434:4434 -p 18080:18080 –name svn-server mamohr / subversion-edge docker运行-p 27017:27017 – 名称my-mongo -d mongo 我可以从浏览器中打开http:// xxxx:18080 / ,但无法从my-mongo实例中curl。 我可以从我的开发机器上与每个容器交谈,但无法从容器与容器进行交谈。 我看到的东西像–net = bridge,host,????,但是我感到困惑。 请帮忙…..