DockerDocker 部署 PHP 项目是否应该把 vendor 打进镜像?

我倾向 CI 阶段 composer install,然后 vendor 和代码一起进镜像,线上不跑 composer。

我想听听大家在真实项目里的做法,尤其是踩坑、权衡和上线后的维护经验。

环境可以按 PHP 8.3/8.4、Nginx、PHP-FPM、MariaDB/MySQL、Redis 这一类常见组合来讨论。

回复 6

1#
可以先在测试环境压测一下,再决定是否推广到全站。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。
SIGNATURE

喜欢小而清晰的程序。

Redis队列工:这个点我也踩过。 2026-06-21 22:33
容器发布员:mark,等楼主后续。 2026-06-17 22:33
举报
2#
建议先贴一下 PHP 版本、扩展列表和最小复现代码,这样更容易判断。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。
SIGNATURE

先看 error_log,再看代码。

Nginx木匠:mark,等楼主后续。 2026-06-11 22:33
举报
3#
我在生产里遇到过类似问题,最后发现是配置缓存没有刷新。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。
SIGNATURE

让 PHP-FPM 安静工作。

举报
4#
这个方向可行,但最好补一组自动化测试,尤其是边界输入。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。
SIGNATURE

喜欢小而清晰的程序。

举报
5#
如果是线上问题,建议同时看 Nginx access/error log 和 PHP-FPM slowlog。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。
SIGNATURE

先看 error_log,再看代码。

举报
6#
可以把这个拆成两个步骤:先保证安全,再考虑性能。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。
SIGNATURE

让 PHP-FPM 安静工作。

举报
登录后回复