Tag: docker networking

如何将运行在本地计算机上的Postgres数据库连接到泊坞窗容器

我有一个Flask应用程序在本地机器上的容器和Postgres数据库上运行,现在,我想连接到docker容器的Postgres数据库(监听5432)。 任何人都可以提出最好的办法吗? (我是docker集装箱新手) 提前致谢。

在多主机networking上部署springboot cloud netflix是否正确?

我正在用netflix云栈开发一个spring启动应用程序。 并将每个模块(微服务)部署在不同的docker容器中。 结构如下: 尤里卡 Zuul 微服务中的业务逻辑 MySQL的 Angular4用户界面 Keycloak – 用户pipe理和authentication ELK – 用于日志维护 豪猪 基普金 好吧,在面对很多问题之后,花费了大量的networking带宽在我以这种方式部署的问题上,我需要知道的是,如果这是正确的方法呢? 这里的限制是我已经提供了2个主机来testing这个configuration,并且进一步的行动计划还没有。 所以这里是我所做的:我还没有使用我提到的完整堆栈。 服务器1 尤里卡 Zuul 麋鹿 Server2上 Keycloak 业务逻辑微服务 MySQL的 Anguar4用户界面 尚未configuration和使用Hystrix和Zipkin。 所以我已经给Eurekaconfiguration了所有需要在Eureka上注册的微服务的Server1的IP:PORT。 Zuul也是如此(尤里卡的IP:PORT)。 在Angular4 UI中,我给出了Zuul部署的URL:PORT,因为所有的服务都将通过Zuul调用。 我知道这是正确的,因为服务需要知道尤里卡在哪里,rest可以通过尤里卡pipe理。 现在我的关键问题是,因为MySQL,ELK不能在Eureka上注册,所以在任何需要的地方给出IP:ELK的PORT和MySQL都是正确的。 ELK的configuration也是如此,我的要求是所有的日志都位于这个我已经使用docker,卷装但是我不知道如何在多主机环境下完成这个工作,我只能使docker把外部卷的日志,然后可能通过URL访问ELK,尚未testing此configuration。 如果是的话,那么这个configuration不是那么独立,如果我们认为它能够自己pipe理呢? 我已经configuration我的docker组成使用“network_mode”:主机,以便主机docker通信可以完成。 再次,我需要知道的是,我的configuration/体系结构是否适用于多主机环境,以及将来适用于云环境? 如果不是,请请引导我正确的path。 谢谢! 请原谅我的英语和语法,我已经尽我所能了解情况,如果您需要更多的意见,请指出并提出问题。

如果设置了variables,如何configurationdocker组合使用给定的子网,或者如果不是,select自己?

我在我的泊坞窗撰写文件中有以下networkingconfiguration。 networks: default: ipam: driver: default config: – subnet: ${DOCKER_SUBNET} 当设置DOCKER_SUBNET ,按照预期使用该variables中指定的子网。 当variables没有设置,我得到: ERROR: Invalid subnet : invalid CIDR address:因为variables是空白的(这是完全合理的)。 有没有一种方法来configurationipam驱动程序,如果没有设置DOCKER_SUBNETvariables, DOCKER_SUBNET -compose将select一个可用的子网,如果没有给出ipamconfiguration,通常会这样做?

Docker容器无法连接到Internet

我在AWS EC2实例Docker Containers上运行,Docker Containers通过Dockernetworking连接,通过一个etcd集群进行复制。 但是所有的容器都不能连接到外面。 例如,如果我ping或curl主机得到100%的包丢失。 etcdnetworking通过AWS私有IP进行通信。 这是我的docker信息: root@ip-10-0-127-34:/home# docker info Containers: 3 Running: 3 Paused: 0 Stopped: 0 Images: 9 Server Version: 17.05.0-ce Storage Driver: devicemapper Pool Name: docker-202:1-2050903-pool Pool Blocksize: 65.54kB Base Device Size: 10.74GB Backing Filesystem: xfs Data file: /dev/loop0 Metadata file: /dev/loop1 Data Space Used: 4.554GB Data Space Total: 107.4GB Data […]

无法在Docker容器和java进程中parsing主机

我正在运行基于运行java进程的高山linux(GoCD服务器)的docker映像。 java进程本身试图运行一些代码来克隆本地git仓库,但是我得到了一个Couldn't resolve hostexception。 我试图从容器内使用'git clone'手动克隆git仓库,并没有问题。 另外,我可以通过运行ping my-service-url.com而没有问题,也可以从主机上ping my-service-url.com相同的结果,从而在ping my-service-url.com容器内ping域。 看来Java解决名称有一些困难,但我不知道如何解决它。 我尝试用RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf创build一个新映像。 我读了另一个问题,可以解决它,但没有运气。 整个Dockerfile如下所示: FROM gocd/gocd-server:v17.5.0 RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf ADD json-config-plugin-0.2.jar /godata/plugins/external/json-config-plugin-0.2.jar ENTRYPOINT ["/docker-entrypoint.sh"] 我在AWS ECS上运行,ipv4转发设置为1,networking模式为bridge 。 我正在用尽想法。

configurationdocker以通过networking进行通信

我有远程机器。 我分两步进入: 1) ssh -A login@server.com 然后在这台机器里面进入我的远程机器: 2)ssh -A mymachine 这个远程机器没有公开的IP ,我可以在DOCKER_HOST=xx.xx.xx.xx指定。 我怎样才能configuration我的docker,这样我的笔记本电脑将有一个docker client ,该远程机器将有docker server守护进程?

如何使openvpn与docker工作

我最近安装了隐私VPN,事实certificate,启用openvpn打破docker。 当我尝试运行docker-compose up以下错误 ERROR: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network 禁用vpn修复了这个问题(但是我宁愿不禁用它)。 有没有办法让这两个和平共处? 我使用debian jessie,我的openvpn有以下版本的string OpenVPN 2.3.4 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Jun 26 2017 很多人通过禁用openvpn来“解决”这个问题,所以我特别要求如何让这两个工作同时进行。 参考文献: https://stackoverflow.com/a/45377351/7918 https://stackoverflow.com/a/42499393/7918 如果这有什么区别,我的VPN提供商是: https : //www.ovpn.com/这里是(有点编辑)configuration文件: client dev tun proto udp remote host […]

为mac指定docker的ip地址

我正在使用Docker for Mac Beta ,它从聚光灯下运行。 有没有办法从控制台运行它,或者强制使用任何configuration文件来指定docker主机的ip地址。 现在它从192.168.64.3变为192.168.64.5(docker的每次启动都可以有任意的随机IP) 大概我需要configuration网桥接口? com.docker.network.bridge.enable_ip_masquerade: true com.docker.network.bridge.host_binding_ipv4: 0.0.0.0 有谁知道这是怎么做到的吗?

docker桥networking,容器之间的HTTP调用非常慢(docker升级后)

服务器规格: os: Ubuntu 14.04 docker: 1.10.2 docker-compose: 1.6.0 刚刚从1.9升级到1.10,并添加docker撰写(但不使用撰写)。 缓慢问题在升级之前不会发生。 此外,Dockerconfiguration了我的DNS IP和代理,如'/ etc / default / docker' DOCKER_OPTS="–dns 8.8.8.8 –dns 8.8.4.4 –dns 138.XX.XX.X" export http_proxy="http://proxy.myproxy.com:8888/" ( 我的IP完全拼出来,只是使用X的问题 ) 我有两个运行HTTP服务器(Node.js)的容器(container_a,container_b),两个容器都在桥接networking(–net = mynetwork)上运行, docker network create mynetwork 两个容器使用container_name作为HTTP调用的“主机”来相互进行HTTP调用,如下所示: container_b:3000/someurl 通过docker桥networking在两个集装箱之间进行的这些呼叫需要很长时间才能完成(约5秒钟)。 这些调用通常在100ms以下运行。 当我改变networking从–net = mynetwork这些容器,而是运行它们都作为 – networking=主机,同时还修改我的http调用使用“localhost”作为主机,而不是容器名称和暴露他们的端口通过一个-p标志…这些调用在<100ms的预期时间内运行。 看起来,docker桥networking导致我在集装箱之间的通话需要很长时间。 任何想法,我可以看看诊断/纠正这个问题?

create_network():未能分配网关(xxxx):testing用例中已经使用的地址

我尝试运行我的test_container_services.py套件,但遇到了这个问题: docker.errors.APIError:500服务器错误:内部服务器错误(“b”{“message”:“未能分配网关(10.49.0.201):地址已被使用”}'“) 我试图删除所有正在运行的容器和相关的networking,但仍然有问题。 信封 核心 $ uname Linux x1 4.8.0-36-generic #36~16.04.1-Ubuntu SMP Sun Feb 5 09:39:57 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux docker $ docker –version Docker version 1.13.1, build 092cba3 SDK docker-py==1.10.6 Docker环境 在运行testing之前,我处于这种状态: $ docker network ls NETWORK ID NAME DRIVER SCOPE a4beb5d4de56 bridge bridge local 8a1012b67f1a host host local ed2452ee5e44 none null […]