docker 网桥bridge创建
# 创建网桥
docker network create testnet
➜ frp docker network create testnet
c5d16df825066dbcc760f6df56a723be332302863f70dcb7a43994dd092c7917
2
# 查看新建的bridge
docker network ls
➜ frp docker network ls
NETWORK ID NAME DRIVER SCOPE
...
c5d16df82506 testnet bridge local
2
3
4
# 连接网桥
docker run -it --name <容器名> ---network <bridge> --network-alias <网络别名> <镜像名>
eg: docker run -it -name frpc --network frpnet --network-alias
# 错误
[root@test3 web-server]# docker-compose up Creating network "web-server_default" with the default driver ERROR: Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables failed: iptables --wait -t nat -I DOCKER -i br-11110b8ea34e -j RETURN: iptables: No chain/target/match by that name.
原因是因为防火墙关闭之后需要重启docker (opens new window)服务。
执行:
service docker restart
# mac
# mac下docker从容器内部访问宿主机ip
1、有网络的情况下: 通过 ifconfig 中找到自己的电脑 ip 然后直接访问即可
2、没有网络的情况下: 通过 ifconfig 是找不到 ip 的,然后 需要找到一个宿主机的ip
可以通过 域名 来访问:
docker.for.mac.host.internal
可以 ping 或者 用 telnet ip port 来测试一下
https://dockerdocs.cn/docker-for-mac/networking/
# 从Mac连接到容器
港口转运工程localhost
; --publish
,-p
或-P
所有的工作。从Linux公开的端口将转发到主机。