symfony - Docker Wkhtmltopdf HostNotFoundError
问题描述
当我尝试在 docker 容器内运行 wkhtmltopdf (v 0.12.5) 时(如果我尝试从外部 url ( http://google.de ) 生成 pdf 效果很好,我收到了这个错误:
wkhtmltopdf http://app.local/web/app_dev.php/get/media media.pdf 正在加载页面 (1/6) 错误:无法加载 http://app.local/web/app_dev.php/get/media , 网络状态代码 3 和 http 状态代码 0 - 找不到主机 app.local 错误:加载页面失败http://app.local/web/app_dev.php/get/media(有时它可以忽略此错误with --load-error-handling ignore) 由于网络错误退出代码 1:HostNotFoundError
我想问题是,容器本身不知道我在本地机器上添加的 /etc/hosts 条目
127.0.0.1 应用程序本地
我很困惑和卡住,因为我不知道如何解决这个问题。我使用 symfony,但这并不重要,因为当我通过 docker exec -it bash 在容器内部使用它时,我得到了上面的错误。在没有 docker 的情况下运行脚本可以正常工作。
谁能给我一个解决方案或提示如何让这个运行?
解决方案
您可以使用 将主机添加到容器/etc/hosts
中--add-host
,请参阅此。
就像是:
$ docker run -it --add-host db-static:86.75.30.9 ubuntu cat /etc/hosts
172.17.0.22 09d03f76bf2c
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
86.75.30.9 db-static
推荐阅读
- ansible - 使用 kolla-ansible 安装 ceph 进行多合一设置
- haskell - 如何在 Haskell 的函数中使用 do 块?
- python - 如果最后一个 impala 语句是 select 语句,如何检查 pyodbc 包?
- c# - DevExpress:如何创建点击事件处理程序?
- function - 将相同的参数添加到 Elm 中的函数列表
- android - 如何使用 react-native 预览应用程序组件内的文件
- amazon-web-services - 上传到 S3 存储桶时出现 403 禁止错误
- c++ - 如何添加宏 Visual Studio 2019
- javascript - 创建没有标识符的多维数组
- elasticsearch - 在 Kibana 中搜索字符串