web-dev-qa-db-ja.com

FreeBSD jail-Nginx、PHP-FPM、Wordpress-jail間でフォルダーを共有する(読み取り専用)

質問

PHP(PHP-FPM)とNginxを別々の刑務所に分けたい。1つはNginxの刑務所、もう1つはPHP-FPMの刑務所/ PHP/Wordpress。

Nginxは静的アセットを提供するのが得意なので、Nginxで直接提供したいと思います。ある刑務所から別の刑務所にフォルダーをマウントするにはどうすればよいですか(読み取り専用)?

また、別の刑務所にNodejsアプリがあるので、その静的アセットをNginxで直接提供したいと思います。

副次的な質問:同じサーバー上で複数のPHPサイトをホストする場合。各Webが必要な場合は、各刑務所にPHP/PHP-FPMをインストールする必要がありますか。 -それぞれの刑務所のアプリ?

情報

  • バージョン:FreeBSD 10.2
  • ファイルシステム:ZFSのルート

ソース

Mount_nullfsの使用に関するこのブログを見つけました。しかし、ホストと刑務所の間ではなく、刑務所の間でそれを使用できますか?

3
blablabla

nullfsを使用して、ホストのファイルシステムの一部への読み取り専用アクセスをjailに与えることができます。すべての刑務所はホストのファイルシステム内に存在するため、刑務所から刑務所へのアクセスの考え方は重要ではありません。

私のシステムでは(そして私は難しい方法で刑務所に入れます)、/etc/jails.confに次のディレクティブがあります。

mount.fstab = "/etc/fstab.${name}";

つまり、刑務所ごとに別々のfstabsがあり、次のようなものが含まれています。

/jail/base /jail/somejail/base nullfs ro 0 0

刑務所、プロセス、およびアプリケーションの分割に関しては、明らかにさまざまな議論があります。個人的には、アプリケーションを1つのjail内に自己完結させてから、(さらに別の)nginxjailを使用してすべてのアプリケーションjailにリバースプロキシするのが好きです。 ZFSとjailごとに1つのアプリケーションを使用すると、スタックのさまざまなバージョンを同時に管理し、新しいバージョンをテストし、必要に応じてロールバックすることが非常に簡単になります。要約すると、私は各アプリケーションjail(静的コンテンツと動的コンテンツの両方を含む)でnginxphp-fpmを実行することを推奨しています。

3
Richard Smith