将符号链接目录挂载到文档根目录以进行部署

将符号链接目录挂载到文档根目录以进行部署

尝试建立一个安全的多用户环境,限制用户权限并实现自动部署。示例已简化,以表达想法。

Docroot:/var/www/site/staging/current/public
部署用户site-staging:staging
主目录: /home/site-staging

部署工具会创建两个目录 - releases 和 current。Current 是 releases 子目录的符号链接,该子目录会随着站点的每次更新而改变。

由于您无法挂载符号链接,因此当前位置mount -a实际上是挂载了发布目录的文档根目录。

#/etc/fstab
/var/www/site/staging/current /home/site-staging/current none rw,bind

请记住,当前目录是一个符号链接,每次部署/更新站点时都需要卸载并重新挂载。

如何将部署用户限制到他们的主目录(chroot)同时自动将当前目录挂载到 docroot?

这是唯一的选择吗?还有更好的策略吗?

答案1

您可以使用主目录 /home/site-staging/current 作为文档根目录。然后,每次部署并重新创建指向发布的当前符号链接时,您的站点都会更新。

相关内容