微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

运行 Laravel 工匠队列:处理 docker 容器启动

如何解决运行 Laravel 工匠队列:处理 docker 容器启动

我正在努力获得

PHP artisan queue:work

命令在我的 docker 容器启动时运行,以便它继续运行和处理作业。 我需要使用“Dockerfile”来做到这一点。

我可以通过在容器运行时执行 exec -it 来运行它。

但我需要使用 Dockerfile 来执行此操作,以便在我的容器部署时自动启动。 我试过了

RUN PHP /var/www/html/artisan queue:work

CMD ["PHP","/var/www/html/artisan","queue:work"]

ENTRYPOINT ["PHP","queue:work"]

当然是分开的。但它们都不起作用。在 CMD 和 ENTRYPOINT 的情况下,我的容器开始发出 502 错误并且我的服务变得无法访问。

我做错了什么?

解决方法

您可能应该定义完整的 php 路径。例如,在我的情况下(Alpine Linux)是:

/usr/bin/php

因此,您的入口点将如下所示:

ENTRYPOINT ["/usr/bin/php","/var/www/html/artisan","queue:work"]

假设您使用的是 Linux,请运行:

which php

为了确定完整路径。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。