php - PhpStorm 或 localhost 中的结帐后 + Docker
问题描述
我需要帮助解决这个问题,拜托。我有(php_web,mysql)的docker,一切正常。我想在 PhpStorm 中使用 Git(提交前、签出后……)。但如果结帐分行
git checkout #xyz
我收到错误
“Doctrine\DBAL\Exception\ConnectionException:驱动程序中发生异常:SQLSTATE [HY000] [2002] php_network_getaddresses:getaddrinfo 失败:提供节点名或服务名,或在 /project/libs/vendor/doctrine/dbal/lib/Doctrine 中未知/DBAL/Driver/AbstractMySQLDriver.php:103"
这个问题是在本地机器上调用命令引起的,而不是在docker中。但我不知道如何编辑我的结帐后。
#!/bin/bash
docker exec -i php_web /bin/sh
#ID
echo $$ #there is LocalMachines ID
echo -e "*********************************"
echo -e "*********GENERATE-PROXIES********"
echo -e "*********************************"
#regenerate proxies
#php bin/console orm:generate-proxies localhost:8100
php bin/console orm:generate-proxies
解决方案
您应该按照docker exec
手册页尝试直接执行您需要的命令:
docker exec -it php_web /bin/sh -c "php bin/console orm:generate-proxies"
至少,这将在容器的上下文中执行,而不是在本地机器中执行。
推荐阅读
- python - 模拟流行病传播的元胞自动机代码
- flutter - 如何解决 Hive 中的动态列表类型转换错误?
- python - 如何分配会话 ID 以记录 pandas 中的数据?
- javascript - 如何在 ejs 文件中更新 javascript-times-ago?
- javascript - 无法预先 FindOneAndUpdate 并更改数据中的字段
- php - laravel DB order by if null?
- jquery - 无法同时使用超时和鼠标悬停
- django - DRF:如何在定义之前调用序列化器(作为嵌套序列化器字段)?
- arrays - 设置字符串变量以从结构化数组中获取值
- reactjs - 设置状态成功后如何调用API?