Tag: 以太网

Docker SDK获取networking接口以及ifindex

即使这个问题已经在几个不同的地方得到解答,但是还没有完整的答案。 其中一个问题是, 找出哪个networking接口属于docker集装箱 在Docker论坛上有一个关于这个的讨论 ,我也在下面添加了一些引用。 我正在尝试将dockernetworking接口映射到主机中的接口。 当docker容器启动时,它会创buildveth对,并将一个对等体放在主机的桥上,另一端放在docker容器中,如下所示。 这些接口之间的关系只是来自这些接口的ifindex。 如果我能得到主机vethxxx接口的vethxxx ,并将其与ifindex中的接口的ifindex比较,我可以build立相关性。 为了做到这一点,我必须访问find容器内的networking接口的ifindex, 为了做到这一点,我必须执行下面的事情, docker exec -it my-container cat /sys/class/net/eth1/iflink 为了做到这一点,必须保证一个容器中有一个shell可用。 有没有办法使用docker客户端(Go Lang Docker客户端)并列出容器内的networking接口,并获得这些接口的相应ifindexes。 与这些ifindexes ,然后我可以得到主机的接口。 如果这样的事情是不可能的,我可以读取正在运行的docker集装箱内的文件,或者复制到主机,使用给定的API客户端泊坞 下面更多的相关链接, docker0和eth0有什么关系? https://www.oreilly.com/learning/what-is-docker-networking#example-bridge-mode-networking

Web3j无法从Docker容器连接

我在Docker容器中有一个Java应用程序。 它尝试使用Web Bean连接到我的私人区块链。 还有一些问题:无法确定节点的同步状态 我以为这个港口是不能到达的,但是它对所有人都是开放的。 如果我执行我的jar文件不在泊坞窗容器 – 一切OK,它的工作。 有任何想法吗 ?

如何在Docker-Compose中一起使用主机networking和其他用户定义的networking?

我想连接Docker-Compose文件中定义的两个Docker容器( app和db )。 其中一个( app )也应该连接到hostnetworking。 容器应该连接到一个通用的用户定义networking( appnet或default ),以使用appnetnetworking中的embedded式DNSfunction。 app还需要直接连接到主机networking,以便在Docker主机的物理networking中接收以太网广播(networking层2)。 如果我同时使用指令network_mode: host和networks组合在一起,我得到以下错误。 ERROR: 'network_mode' and 'networks' cannot be combined 所以我只能用networks做这个! version: "3.3" services: app: build: . image: app container_name: app environment: – MONGODB_HOST=db depends_on: – db networks: – appnet – hostnet db: image: mongo:latest container_name: db networks: – appnet networks: appnet: hostnet: external: name: host […]