Jitsi Meet をさくらのクラウドのスタートアップスクリプトで動かす方法
概要
Jitsi Meet ( https://jitsi.org/jitsi-meet/) は、ビデオ会議用の WebRTC JavaScript アプリケーションであり、ブラウザやスマートフォン向けの専用アプリから利用できます。 オープンソース・ソフトウェア(Apache License 2.0) として自由に利用できます。
この Jitsi Meet を自動的にセットアップできるのが、さくらのクラウドの「Jitsi Meet スタートアップスクリプト」です。このスタートアップスクリプトを使えば、以下の作業を自動的に行います。
- サーバ作成時、自動的に Jitsi Meet をセットアップする(スタートアップスクリプトは Ubuntu 18.04 LTS が対象)
- 自動的に DNS ゾーン情報を変更し、「https://<ドメイン名>」でアクセス可能になる
また、手作業で、 Let's Encrypt の SSL 証明書を使った暗号化の通信にも対応できます。
事前準備
スタートアップスクリプトを使えば、新しいサーバ(とディスク)作成と同時に Jitsi Meet を自動的にセットアップします。そのためには、DNS ゾーンの登録と、API 鍵の作成が必要です。
DNS アプライアンスに DNS ゾーンを登録
スタートアップスクリプトで作成した Jitsi Meet の環境には、ブラウザで「https://ホスト名/」へアクセスします(例: meet.example.jp
や example.jp
など)。ここで利用する「ホスト名」にあたる場所は、あらかじめ DNS アプライアンスに登録が必要です。
注意点としては、「ホスト名+ドメイン名」でアクセスしたい場合、DNS アプライアンスでも「ホスト名.ドメイン名」として「ゾーン名」を追加する必要があります。
以下の例は、 https://meet.toaru.site/
としてアクセスしたいため、 meet.toaru.site
のゾーンを追加しています。
ゾーン追加後、表示された名前をダブルクリックすると、「DNSサーバ」が表示されます。 ここで表示されている DNS サーバを、DNS 登録事業者(レジストラ)のドメイン管理画面から「ネームサーバ」として指定する必要があります。
DNS アプライアンスに関する一般的な手順は、以下の記事をご覧ください。
- ドメイン名(ゾーン情報)を登録するには - DNS アプライアンス編(1)
注意点:DNS アプライアンスにドメイン登録後、 リソースレコードは追加しないでください 。 もし登録済みのドメイン名で利用しようとする場合は、あらかじめ、対象ドメインのリソースレコードを削除しておく必要があります。
API キーの作成
スタートアップスクリプトの内部操作(起動したサーバの IP アドレスを確認するため、API キーと sacloud CLI を使います)のため、何らかの API キーを事前に作成する必要があります。既に作成済みの場合は、作業は不要です。
- APIキーの新規作成・編集
サーバ作成時、スタートアップスクリプトで Jitsi Meet を選択
スタートアップスクリプトは Ubuntu Server をご利用いただく前提です。
セットアップを進めるには、コントロールパネルの左メニューから「サーバ」をクリックします。そして、「シンプルモード」にチェック印が入っていれば、クリックしてシンプルモードを解除します。
それから、サーバプランの「仮想コア」や「メモリ」は特に触りません。1コア、1GB のままで構いません。必要があれば、サーバ作成後にスペックアップもできます。
それから「アーカイブ選択」は「Ubuntu Server 18.04.04 LTS 64bit」を選択します。
画面を更に下へスクロールし、「ディスクの修正」では、 管理ユーザのパスワード を入力します。 Ubuntu Server の場合、サーバにログインする「ubuntu」ユーザのパスワード になります。また、「sudo su」で root 権限で作業するときの確認パスワードにもなります。
それから「ホスト名」には、今回利用する「ドメイン名」を記録します。画面では「toaru」というホスト名を入力していますが、ここは任意の名前で構いません。
そして、「配置する スタートアップスクリプト」で「Jitsi Meet」を選択します。
さらに下にある「スタートアップスクリプト オプション」で「ホスト名」の場所には、DNS アプライアンスに登録した「ゾーン名」を入力します。
ここで注意が必要なのは、たとえば「meet.example.jp」とゾーンを登録した場合、この「meet.example.jp」をホスト名に書く必要があります。あるいは、ホスト名ナシの 「example.jp」してゾーンを登録した場合は「example.jp」です。
もし「room.example.jp」のような別の名前で作成したい場合は、DNS アプライアンスでゾーンの登録を「room.example.jp」になっているかどうか確認し、そうでなければ作り直す必要があります。
なお、先の画像では「toaru.site」というゾーンで登録したので、Jitsi Meet で扱うホスト名も「toaru.site」になります。
それから「APIキー」で利用したい API キーを選びます。
あとは、画面をスクロールし「サーバの情報」で「Jitsi Meet」など、サーバ一覧画面に表示される分かりやすい名前をつけておきます。
最後に画面を下までスクロールし、右下にある「作成」を押します。確認画面で再び「作成」をクリックし、サーバ作成を開始します。
あとはサーバが作成完了するまで待ちます。
これでサーバ作成まで完了しました。
サーバ作成後のスタートアップスクリプト動作確認
サーバ作成が完了すると、スタートアップスクリプトの自動処理がスタートします。進行状況を確認するには、サーバに SSH 接続するか、コンソール画面からサーバの中にログインします。さくらのクラウドの Ubuntu Server は、ログインユーザが「ubuntu」です。また、接続先のサーバ IP アドレス情報は、サーバ一覧画面の「NIC」列から確認できます。
$ ssh -l ubuntu <IPアドレス>
それから sudo ls -al /root/.sacloud-api/notes/
で root に切り替えます。パスワードは ubuntu アカウントでログイン時のものです。
ubuntu@toaru:~$ sudo sudo ls -al /root/.sacloud-api/notes/
[sudo] password for ubuntu:
それから画面を確認します。
ubuntu@toaru:~$ sudo ls -al /root/.sacloud-api/notes/
total 72
drwx------ 2 root root 4096 May 21 11:58 .
drwx------ 3 root root 4096 May 21 11:54 ..
-rwx------ 1 root root 3571 May 21 11:54 113200581151
-rw-r--r-- 1 root root 0 May 21 11:58 113200581151.done
-rw-r--r-- 1 root root 55541 May 21 11:58 113200581151.log
このように「数字.done」というファイルが出来ていれば、スタートアップスクリプトの処理が正常終了しました。あとはブラウザから https://<IPアドレス>/
でアクセスすると、Jitsi Meet の画面が操作できます。
また、 DNS 情報が反映されれば https://ドメイン名/
でもアクセス可能になります。
処理が進行中かどうかは sudo tail -f /root/.sacloud-api/notes/<数字>.log
コマンドを実行し、ログを確認すると進行状況などを確認できます。
Jitsi Meet 動作確認
ブラウザで「https://<ドメイン名>/」 にアクセスします。なお、接続時は SSL の自己書名を行っているため、ブラウザで継続が出ます。
Let's Encrypt の証明書を設定するには、サーバログイン後
sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
を実行します。
関連文章
- Jitsi Meet | さくらのクラウド ドキュメント
Author And Source
この問題について(Jitsi Meet をさくらのクラウドのスタートアップスクリプトで動かす方法), 我々は、より多くの情報をここで見つけました https://qiita.com/zembutsu/items/a50c70ca17b501caf6c4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .