在网络连接由firewalld控制的Linux工作站上,我们可能需要查询以找到由ddev添加的网桥的名称,并将其添加到受信任的防火墙区域。在启动后挂钩中可以使用以下bash脚本。
#!/bin/bash
# discover network id string by querying docker with name ddev_default
DDEVNETWORK=$(docker network ls -f name=ddev_default -q);
echo "Configuring firewalld add br-$DDEVNETWORK to zone trusted"
# tell firewalld to temporarily add br-(NETWORK ID) to trusted zone
firewall-cmd --zone=trusted --change-interface=br-$DDEVNETWORK
您可以将此脚本作为ddev-firewalld-allow添加到$ PATH中的目录中,例如,一个个人〜/ bin目录,使其可执行,并通过在post start钩子中将其添加到您的项目中, .ddev / config.yaml的结尾
hooks:
post-start:
- exec-host: "ddev-firewalld-allow"
此解决方案的文档已从https://github.com/drud/ddev/pull/1128移至