私はFreeBSD 10.1マシンを持っています。刑務所にtomcat8とopenjdk8をインストールしたいです。この刑務所はいくつかのWebアプリケーションにのみ使用され、ポートコレクションまたはその中に完全なパッケージ管理ツールをインストールしたくありません。他の刑務所の場合は、次のようにホストから必要なすべてのパッケージをインストールできます。
pkg -j jail_name install package_name
問題は、私のアプリケーションの1つにjdk8が必要な場合、プリコンパイルされたtomcat8パッケージがopenjdk7に依存することです。
刑務所にポートコレクションをインストールし、ファイアウォールを開き、刑務所から世界への接続を許可し、ポートのすべてをインストールしてから、すべてを再構成してポートコレクションを削除すると、これを行うことができます。しかし、私はこれをすべてやらない方が良いです!
それでは、ポートコレクションをインストールせずに刑務所からopenjdk8を介してtomcat8をインストールし、刑務所から外部の世界への接続を許可する方法は何ですか?
答え1
ポートコレクションとpkgツールを混在させることができますが、少し面倒です。
1 ホスト部
まず、openjdk8をパッケージとしてインストールします。pkg install openjdk8
次に、ポートからtomcat8生成パッケージをビルドしてインストールします。 openjdk8はすでにインストールされているため、ポートで使用されます。
cd /usr/ports/www/tomcat8
make build
make install
make package # <= Ok the package is in work/pkg
ビルドプロセス中にjakarta-commons-daemon-1.0.15
openjdk8を使用してビルドされるため、パッケージのみをビルドします。
cd /usr/ports/devel/jakarta-commons-daemon
make package # <= Ok the package is in work/pkg
2 刑務所部
これでパッケージが構築されたので、パッケージをpkg -j jail_name add
。
したがって、次の方法で刑務所ファイルシステムにアクセスできるとします/usr/jail/jail_name
。
cp /usr/ports/www/tomcat8/ports/pkg/tomcat*.pkg /usr/jails/jail_name/root
cp /usr/ports/devel/jakarta-commons-daemon/ports/pkg/jakarta*.pkg /usr/jails/jail_name/root
刑務所の設定方法によっては、scpファイルが必要になる場合があります。
今簡単です。
pkg -j jail_name add /root/jakarta-commons-daemon-1.0.15.txz
pkg -j jail_name add /root/tomcat8-8.0.18.txz