3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Jitsi Meet をさくらのクラウドのスタートアップスクリプトで動かす方法

Last updated at Posted at 2020-05-26

概要

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.jpexample.jp など)。ここで利用する「ホスト名」にあたる場所は、あらかじめ DNS アプライアンスに登録が必要です。

注意点としては、「ホスト名+ドメイン名」でアクセスしたい場合、DNS アプライアンスでも「ホスト名.ドメイン名」として「ゾーン名」を追加する必要があります。

以下の例は、 https://meet.toaru.site/ としてアクセスしたいため、 meet.toaru.site のゾーンを追加しています。

image.png

ゾーン追加後、表示された名前をダブルクリックすると、「DNSサーバ」が表示されます。 ここで表示されている DNS サーバを、DNS 登録事業者(レジストラ)のドメイン管理画面から「ネームサーバ」として指定する必要があります。

DNS アプライアンスに関する一般的な手順は、以下の記事をご覧ください。

注意点:DNS アプライアンスにドメイン登録後、 リソースレコードは追加しないでください 。 もし登録済みのドメイン名で利用しようとする場合は、あらかじめ、対象ドメインのリソースレコードを削除しておく必要があります。

API キーの作成

スタートアップスクリプトの内部操作(起動したサーバの IP アドレスを確認するため、API キーと sacloud CLI を使います)のため、何らかの API キーを事前に作成する必要があります。既に作成済みの場合は、作業は不要です。

サーバ作成時、スタートアップスクリプトで Jitsi Meet を選択

スタートアップスクリプトは Ubuntu Server をご利用いただく前提です。

セットアップを進めるには、コントロールパネルの左メニューから「サーバ」をクリックします。そして、「シンプルモード」にチェック印が入っていれば、クリックしてシンプルモードを解除します。

image.png

それから、サーバプランの「仮想コア」や「メモリ」は特に触りません。1コア、1GB のままで構いません。必要があれば、サーバ作成後にスペックアップもできます。

それから「アーカイブ選択」は「Ubuntu Server 18.04.04 LTS 64bit」を選択します。

image.png

画面を更に下へスクロールし、「ディスクの修正」では、 管理ユーザのパスワード を入力します。 Ubuntu Server の場合、サーバにログインする「ubuntu」ユーザのパスワード になります。また、「sudo su」で root 権限で作業するときの確認パスワードにもなります。

それから「ホスト名」には、今回利用する「ドメイン名」を記録します。画面では「toaru」というホスト名を入力していますが、ここは任意の名前で構いません。

image.png

そして、「配置する スタートアップスクリプト」で「Jitsi Meet」を選択します。

image.png

さらに下にある「スタートアップスクリプト オプション」で「ホスト名」の場所には、DNS アプライアンスに登録した「ゾーン名」を入力します。

ここで注意が必要なのは、たとえば「meet.example.jp」とゾーンを登録した場合、この「meet.example.jp」をホスト名に書く必要があります。あるいは、ホスト名ナシの 「example.jp」してゾーンを登録した場合は「example.jp」です。

もし「room.example.jp」のような別の名前で作成したい場合は、DNS アプライアンスでゾーンの登録を「room.example.jp」になっているかどうか確認し、そうでなければ作り直す必要があります。

image.png

なお、先の画像では「toaru.site」というゾーンで登録したので、Jitsi Meet で扱うホスト名も「toaru.site」になります。

それから「APIキー」で利用したい API キーを選びます。

あとは、画面をスクロールし「サーバの情報」で「Jitsi Meet」など、サーバ一覧画面に表示される分かりやすい名前をつけておきます。

image.png

最後に画面を下までスクロールし、右下にある「作成」を押します。確認画面で再び「作成」をクリックし、サーバ作成を開始します。

image.png

あとはサーバが作成完了するまで待ちます。

image.png

これでサーバ作成まで完了しました。

サーバ作成後のスタートアップスクリプト動作確認

サーバ作成が完了すると、スタートアップスクリプトの自動処理がスタートします。進行状況を確認するには、サーバに 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

を実行します。

関連文章

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?