百日行」第98日目は、RailsベースのWeb会議システム、Mconf-Webです。Mconf-Webは、会議ごとに参加するユーザ間での情報共有やビデオ会議が行えるアプリです。ビデオ会議の機能については、残念ながら、今回の検証時間内で動かすことができませんでしたが、会議自体の管理や会議毎の情報共有をする目的で利用する場合、便利だと思います。公式サイトhttp://mconf.org/ソースコードhttps://github.com/mconf/mconf-web参考https://github.com/mconf/mconf-web/wiki/Deploymentデプロイ準備から動作確認までの手順は以下の通りです。ソースコードの取得Mconf-Webのソースを、GitHubから取得します。最新版はv2.0.0なので、チェックアウトします。サービスの作成Mconf-WebはMySQLとRedisを使用するため、作成しておきます。pushした本アプリに作成したRedisサービスをバインドしておきます。Foundryのauto-reconfiguration機能で自動的に接続設定されるため、この操作は不要です。Foundryで動かす場合、画面が予期したスタイルにならない等などの不具合を解消するため、Gemfileにrails_12factorを追加します。修正したGemfileから、Gemfile.lockを再生成します。.ruby-versionで2.2.0が指定されているので、予め環境にインストールしておいて下さい。1.10.6副産物のvendor/bundle配下のファイルは、アプリのデプロイには不要ですので、削除するか、第89日目でも記述されているように.cfignoreでプッシュ対象から除外して下さい。設定ファイルの準備デプロイに必要な各種設定ファイルの作成を行っていきます。ベースは、Mconf-WebのDeploymentマニュアルに従って、用意されているsetup_conf.yml.exampleをコピーして作成します。config/setup_conf.yml次に、RedisのCredential情報を設定します。envで、RedisのCredential情報を確認します。}}config/setup_conf.ymlに、取得したCredential情報を設定します。Aptfileファイルの作成Mconf-WebのDeploymentマニュアルに記述されているaptパッケージの中で、RootFSに入っていないと思われるものから、入れる必要があるパッケージをピックアップしてデプロイ時にインストールするようにします。インストールは、heroku-buildpack-aptを使って行います。インストールするパッケージは、本アプリのルートディレクトリにAptfileファイルを作成して定義します。複数のBuildPackを指定してデプロイをする必要があるため、heroku-buildpack-multiを使ってデプロイを行います。使用するBuildPackは、アプリのルートディレクトリに.buildpacksファイルを作成して定義します。同じものを指定しています。manifes.tymlファイルの作成デプロイ用のマニフェストを作成します。'$PATH:/tmp/staged/app/.apt/usr/lib/jvm/java-7-openjdk-amd64/bin'設定について、特徴的な箇所について記述します。デプロイ直後でメモリがデフォルトの256MBでギリギリでしたので、念のため1Gとしました。heroku-buildpack-multiを指定します。起動に若干時間がかかるため、Max値の180秒を指定しました。Aptfileで指定したjava-7の展開先が、heroku-buildpack-aptの想定箇所と異なるため、手動で指定します。1G無事、デプロイは成功しました。動作確認ブラウザから払いだされたアプリのURLへアクセスすると、トップページが表示されます。ほうに入力してログインすると、ホーム画面が表示されます。ManagementページからMconf-Webの設定を行ってみます。各ユーザからの会議への参加申し込み・承認等ではメール通知が行われるため、SMTPサーバ等の設定が必要です。今回はGmailのアカウントを登録してみましたが、上手くメールが配信出来ませんでした。次に、Spaceを作っていきます。Mconf-Webでは、各会議(Conference)はSpaceという単位で管理します。spaceボタンをクリックし、Spaceを作成します。Space作成用のフォームに会議名や説明を入力し、Createボタンをクリックすると、Spaceが作成されます。今度は、新しくユーザを作成してみます。accountからユーザを作成すると、ホーム画面が表示されます。space)を出すことができます。各会議のページでは、コメント共有やビデオ会議(上手く起動しませんでしたが...)などが行えます。コメントの共有は、Wallからメッセージを登録します。登録されたメッセージは、参加メンバーのホームにも表示されます。ビデオ会議は、WebconferenceのStartボタンを押すと開催できるはずですが、今回はエラーとなってしましました。サーバが必要なようです。Managementページから設定しましたが、残念ながら上手く接続できない状態でタイムアップとなってしまいました...今後、もう少し検証しよい結果がでましたら、本ページのほうを更新したいと思います。@horiu_jnにmentionを飛ばして頂ければと思います。