0

当我尝试在 Docker swarm 节点中部署 symfony 时出现此错误

Kernel.php 第 338 行中的 ContextErrorException:

警告:file_put_contents(/home/backend_microservice/private_webapp/var/cache/dev/classes.map):无法打开流:没有这样的文件或目录

我试图手动删除缓存,我删除了供应商目录,并用 Composer 生成了一个新目录,但仍然给出相同的错误。

相同的配置仅适用于 docker 引擎,但不适用于 swarm 模式。

操作系统:CentOS 7.3

虚拟化:Docker 版本 17.06.0-ce,构建 02c1d87 Swarm 模式

Symfony:3.2.9

有什么帮助或建议吗??先感谢您。

4

1 回答 1

0

好的,我设法生成了缓存。即使我将权限更改为 777,我也无法写入缓存目录。因此,我只需从 docker start 脚本中删除以下行 - 这是 symfony 文档推荐的 :-( :

HTTPDUSER=ps axo 用户,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | 头-1 | cut -d\ -f1 && setfacl -R -mu:"$HTTPDUSER":rwX -mu:whoami:rwX var && setfacl -dR -mu:"$HTTPDUSER":rwX -mu:whoami:rwX var

于 2017-07-10T19:50:29.503 回答