第4章 個別の Software Collections の詳細

本章では、特定の Software Collections の詳細に重点を置き、これらのコンポーネントに関する追加情報を提供します。

4.1. Red Hat Developer Toolset

Red Hat Developer Toolset は、Red Hat Enterprise Linux プラットフォームで作業する開発者向けに設計されています。Red Hat Developer Toolset は、現在のバージョンのGNU Compiler CollectionGNU Debugger、およびその他の開発、デバッグ、パフォーマンス監視ツールを提供します。他の Software Collections と同様に、追加のツールセットが /opt/ ディレクトリーにインストールされます。これらのツールは、提供された scl ユーティリティーを使用してオンデマンドでユーザーが有効にします。他の Software Collections と同様に、これらのツールの Red Hat Enterprise Linux システムバージョンを置き換えることはありません。また、scl ユーティリティーを使用して明示的に呼び出されない限り、これらのシステムバージョンを優先して使用することもできます。
機能の概要は、『Red Hat Developer Toolset Release Notes』 のFeatures セクションを参照してください。

4.2. Ruby on Rails 5.0

Red Hat Software Collections 3.4 はrh-ruby24 Software Collection をrh-ror50 Collection と共に提供します。
Ruby on Rails 5.0 をインストールするには、root で以下のコマンドを入力します。
yum install rh-ror50
rh-ror50 Software Collection のパッケージをインストールすると、依存関係にあるrh-ruby24rh-nodejs6 が自動的に取り込まれます。
rh-nodejs6 Collection は、アセットパイプライン内の特定の gem が、sasscoffee-script のソースファイルなどの Web リソースを後処理するために使用します。また、Action Cable フレームワークは、rh-nodejs6 Rails で WebSocket を処理するためのものです。
rh-nodejs6 を必要とせずに rails s コマンドを実行するには、Gemfile 内の coffee-rails gem と uglifier gem を無効にします。
Node.js なしで Ruby on Rails を実行するには、次のコマンドを実行します。実行すると、自動的に rh-ruby24 が有効になります。
scl enable rh-ror50 bash
すべての機能を備えた Ruby on Rails を実行するには、rh-nodejs6 Software Collection も有効にします。
scl enable rh-ror50 rh-nodejs6 bash
rh-ror50 Software Collection は、rh-ruby24rh-nodejs6 のコンポーネントと共にサポートされています。

4.3. MongoDB 3.6

rh-mongodb36 Software Collection は、Red Hat Enterprise Linux 7 でのみ利用できます。Red Hat Enterprise Linux 6 で MongoDB 3.4 を使用する方法は、「MongoDB 3.4」 を参照してください。
rh-mongodb36 Collection をインストールするには、root で以下のコマンドを入力します。
yum install rh-mongodb36
MongoDB シェルユーティリティーを実行するには、以下のコマンドを入力します。
scl enable rh-mongodb36 'mongo'
注記
rh-mongodb36-mongo-cxx-driver パッケージは、Red Hat Developer Toolset 6 の GCC を使用して -std=gnu++14 オプションでビルドされています。C++11 (以降) の機能を使用する MongoDB C++ ドライバーの共有ライブラリーを使用するバイナリーは、Red Hat Developer Toolset 6 以降でもビルドする必要があります。Red Hat Developer Toolset 6 User Guide の C++ compatibility を参照してください。
MongoDB デーモンを起動するには、root で以下のコマンドを入力します。
systemctl start rh-mongodb36-mongod.service
システムの起動時に MongoDB デーモンを起動するには、root でこのコマンドを入力します。
systemctl enable rh-mongodb36-mongod.service
MongoDB シャードサーバーを起動するには、root で以下のコマンドを入力します。
systemctl start rh-mongodb36-mongos.service
システムの起動時に MongoDB シャードサーバーを起動するには、root でこのコマンドを入力します。
systemctl enable rh-mongodb36-mongos.service
少なくとも 1 つの設定サーバーを起動し、mongos.conf ファイルで指定しない限り、MongoDB シャーディングサーバーは機能しないことに注意してください。

4.4. MongoDB 3.4

rh-mongodb34 Collection をインストールするには、root で次のコマンドを実行します。
yum install rh-mongodb34
MongoDB シェルユーティリティーを実行するには、以下のコマンドを入力します。
scl enable rh-mongodb34 'mongo'
注記
rh-mongodb34-mongo-cxx-driver パッケージは、Red Hat Developer Toolset 6 の GCC を使用して -std=gnu++14 オプションでビルドされています。C++11 (以降) の機能を使用する MongoDB C++ ドライバーの共有ライブラリーを使用するバイナリーは、Red Hat Developer Toolset 6 でもビルドする必要があります。Red Hat Developer Toolset 6 User Guide の C++ compatibility を参照してください。

Red Hat Enterprise Linux 6 上の MongoDB 3.4

Red Hat Enterprise Linux 6 を使用している場合は、以下の手順がシステムに適用されます。
MongoDB デーモンを起動するには、root で以下のコマンドを入力します。
service rh-mongodb34-mongod start
システムの起動時に MongoDB デーモンを起動するには、root でこのコマンドを入力します。
chkconfig rh-mongodb34-mongod on
MongoDB シャードサーバーを起動するには、root でこのコマンドを入力します。
service rh-mongodb34-mongos start
システムの起動時に MongoDB シャードサーバーを起動するには、root で以下のコマンドを入力します。
chkconfig rh-mongodb34-mongos on
少なくとも 1 つの設定サーバーを起動し、mongos.conf ファイルで指定しない限り、MongoDB シャーディングサーバーは機能しないことに注意してください。

Red Hat Enterprise Linux 7 の MongoDB 3.4

Red Hat Enterprise Linux 7 を使用する場合は、以下のコマンドを使用できます。
MongoDB デーモンを起動するには、root で以下のコマンドを入力します。
systemctl start rh-mongodb34-mongod.service
システムの起動時に MongoDB デーモンを起動するには、root でこのコマンドを入力します。
systemctl enable rh-mongodb34-mongod.service
MongoDB シャードサーバーを起動するには、root で以下のコマンドを入力します。
systemctl start rh-mongodb34-mongos.service
システムの起動時に MongoDB シャードサーバーを起動するには、root でこのコマンドを入力します。
systemctl enable rh-mongodb34-mongos.service
少なくとも 1 つの設定サーバーを起動し、mongos.conf ファイルで指定しない限り、MongoDB シャーディングサーバーは機能しないことに注意してください。

4.5. Maven

Red Hat Enterprise Linux 7 でのみ利用可能なrh-maven35 Software Collection は、ソフトウェアのプロジェクト管理と理解を深めるツールを提供します。Maven はプロジェクトオブジェクトモデル (POM) の概念に基づいて、プロジェクトのビルド、レポート、およびドキュメントを一元的な情報から管理できます。
rh-maven36 Collection をインストールするには、root で次のコマンドを実行します。
yum install rh-maven36
このコレクションを有効にするには、シェルプロンプトで以下のコマンドを入力します。
scl enable rh-maven36 bash
リモートリポジトリーやミラーなどのグローバル Maven 設定は、/opt/rh/rh-maven36/root/etc/maven/settings.xml ファイルを編集してカスタマイズできます。
Maven の使用に関する詳細は、Maven ドキュメント を参照してください。プラグインの使用法については、こちらのセクション で説明します。個々のプラグインに関するドキュメントをお探しの場合は、プラグインのインデックス を参照してください。

4.6. パッセンジャー

rh-passenger40 Software Collection は、高速、堅牢、軽量に設計された Web およびアプリケーションサーバーである Phusion Residential を提供します。
rh-passenger40 Collection は、特に ruby193ruby200rh-ruby22 Software Collection など、複数のバージョンの Ruby を、ror40 または rh-ror41 コレクションを使用した Ruby on Rails とともにサポートしています。いずれかの Ruby Software Collection で Passenger を使用する前に、対応するパッケージを rh-passenger40 Collection (rh-passenger-ruby193rh-passenger-ruby200、または rh-passenger-ruby22 パッケージ) からインストールしてください。
rh-passenger40 Software Collection は、httpd24 Software Collection の Apache httpd とともに使用することもできます。そのためには、rh-passenger40-mod_passenger パッケージをインストールしてください。Apache httpd 設定の例については、デフォルト設定ファイル /opt/rh/httpd24/root/etc/httpd/conf.d/passenger.conf を参照してください。これには、単一の Apache httpd インスタンスで複数の Ruby バージョンを使用する方法が示されています。
さらに、rh-passenger40 Software Collection は、nginx16 Software Collection の nginx 1.6 Web サーバーとともに使用できます。nginx 1.6rh-passenger40 とともに使用するには、Web アプリケーションのディレクトリーで次のコマンドを使用して、Passenger をスタンドアロンモードで実行します。
scl enable nginx16 rh-passenger40 'passenger start'
または、アップストリームのPassenger documentationに記載されているように、nginx16 設定ファイルを編集してください。

4.7. データベースコネクター

データベースコネクターパッケージは、データベースサーバーへのローカルまたはリモート接続に必要なデータベースクライアント機能を提供します。表4.1「言語とデータベース間の相互運用性」 特定のデータベースサーバーのコネクターを含む言語ランタイムを含む Software Collections を一覧表示します。( )
  • はい - この組み合わせはサポートされています
  • いいえ - この組み合わせはサポートされていません

表4.1 言語とデータベース間の相互運用性

 Database
言語 (Software Collection)MariaDBMongoDBMySQLPostgreSQLRedis
rh-nodejs4いいえいいえいいえいいえいいえ
rh-nodejs6いいえいいえいいえいいえいいえ
rh-nodejs8いいえいいえいいえいいえいいえ
rh-nodejs10いいえいいえいいえいいえいいえ
rh-nodejs12いいえいいえいいえいいえいいえ
rh-perl520はいいいえはいはいいいえ
rh-perl524はいいいえはいはいいいえ
rh-perl526はいいいえはいはいいいえ
rh-php56はいはいはいはいいいえ
rh-php70はいいいえはいはいいいえ
rh-php71はいいいえはいはいいいえ
rh-php72はいいいえはいはいいいえ
rh-php73はいいいえはいはいいいえ
python27はいはいはいはいいいえ
rh-python34いいえはいいいえはいいいえ
rh-python35はいはいはいはいいいえ
rh-python36はいはいはいはいいいえ
rh-ror41はいはいはいはいいいえ
rh-ror42はいはいはいはいいいえ
rh-ror50はいはいはいはいいいえ
rh-ruby25はいはいはいはいいいえ
rh-ruby26はいはいはいはいいいえ