Host a Domain from a Local or Cloud Linux Server

Vircadiaパッケージは、独自のドメインをすばやく立ち上げて実行するのに役立ちます。

Installation

元のドメインがパッケージを使用してインストールされている場合は、既存のVircadiaドメインでこれらの同じコマンドを実行して、ドメインをアップグレードできます。パッケージは現在、次のディストリビューションで利用できます。

Ubuntu Server 18.04 LTS (2022.1.1 Selene)

wget https://github.com/vircadia/vircadia/releases/download/2022.1.1/vircadia-server-2022.1.1-Selene-Ubuntu18.04_amd64.deb
sudo apt-get update && sudo apt-get install ./vircadia-server-2022.1.1-Selene-Ubuntu18.04_amd64.deb

Ubuntu Server 20.04 LTS (2022.1.1 Selene)

wget https://github.com/vircadia/vircadia/releases/download/2022.1.1/vircadia-server-2022.1.1-Selene-Ubuntu20.04.4_amd64.deb
sudo apt-get update && sudo apt-get install ./vircadia-server-2022.1.1-Selene-Ubuntu20.04.4_amd64.deb

Rocky Linux 8.x (2022.1.1 Selene)

sudo yum install https://github.com/vircadia/vircadia/releases/download/2022.1.1/vircadia-server-2022.1.1-Selene.Rocky8.x_x86_64.rpm

Unlisted Distribution

ここにディストリビューションが表示されない場合は、Linux build guideを使用してソースから独自のサーバーをコンパイルできます。

Configuration

インストールパッケージは、デフォルトのポートの場所にドメインを作成し、そのマシンで実行し続けるようにサービスを構成します。

開いて管理する必要のあるネットワークポートのリストについては、こちらを参照してください。

Webブラウザをポート40100でサーバーに接続します(サーバーが実行されているマシンを使用している場合、これはhttp://localhost:40100になります)初期設定ウィザードを完了すると、ドメインが機能していることでしょう。

Files and Server Configuration

The program files are installed in /opt/vircadia:

  • /opt/vircadia contains the executables

  • /opt/vircadia/lib contains libraries required for operation

  • /opt/vircadia/plugins is currently used for audio codecs

  • /opt/vircadia/resources is required for the administrative website

このフォルダーにある実行ファイル(new-serverを除く)は、LD_LIBRARY_PATHに/opt/vircadia/libを設定(LD_LIBRARY_PATH=/opt/vircadia/lib)することにより、コマンドプロンプトから起動することができます。

The file /etc/opt/vircadia/default.conf contains any environment variables necessary to running the domain.

すべてのコンテンツは/var/lib/vircadia/defaultの下に保存されます。/var/lib/vircadiaの下のすべてのファイルはvircadiaドメイン関連のプロセスを実行するユーザーに所有されます。

Services

インストールパッケージは、Vircadiaドメインを管理するために次のsystemdサービスをセットアップします。

  • vircadia-domain-server@default.service: Manages the core domain server

  • vircadia-assignment-client@default.service: Spawns and manages the assignment clients

  • vircadia-server@default.target: Controls startup and shutdown of the above services

vircadia-server@default.target サービスだけが自動起動に設定されています。このサービスを開始または停止すると、他の2つのサービスが停止します。

最初の2つのサービスは、サービスジャーナルに大量のデータを記録します。これらのサービスをsystemctl statusにより確認することにより、動作状況と直近で出力されたログメッセージをチェックすることができます。

Multiple Domains

インストールパッケージは、複数のドメインを単一のサーバー上で異なるポート番号で実行できるように構成されています。次のコマンドを使用して、新しいサーバーを作成できます。

/opt/vircadia/new-server <name> <base-port>

ここで、nameはドメインを命名し管理するための単語であり、base-portはシステム上の他の用途と重複しない連続した4つのポート番号の範囲の最初のものでなければなりません。

**my-server-two **という名前の新しいサーバーを作成したとすると、次のように設定されます。

  • Environment variables in /etc/opt/vircadia/my-server-two.conf

  • Content stored in /var/lib/vircadia/my-server-two

  • Services launched as vircadia-domain-server@my-server-two.service, vircadia-assignment-client@my-server-two.service, and vircadia-server@my-server-two.target

Deleting a Vircadia Server

Uninstall the package.

# Ubuntu
# Note: 'apt-get purge' will remove configuration files as well. Use 'apt-get remove' to keep them.
sudo apt-get purge vircadia-server
# Amazon Linux 2
sudo yum remove vircadia-server

Deleting a Domain from a Multiple Domain Installation

Find the name of the domain that you want to remove.

sudo ls ~vircadia

リストから削除するドメインの名前を選択して、停止します。

sudo systemctl stop [email protected]<INSERT NAME HERE>.target

Disable the service for the domain.

sudo systemctl disable [email protected]<INSERT NAME HERE>.target

Remove the associated environment variables.

sudo rm /etc/opt/vircadia/<INSERT NAME HERE>.conf

Remove all data and configurations.

sudo rm -rf ~vircadia/<INSERT NAME HERE>
sudo rm -rf /var/lib/vircadia/<INSERT NAME HERE>

Legacy Services

ストレージを簡素化し、1台のサーバーで複数のドメインを実行する機能を簡素化するために、デフォルト構成にいくつかの調整が加えられています。このロジックを削除して、ソースからコンパイルされたVircadiaサーバーの実行方法に近いサーバーを実行する場合は、これがオプションとして提供されます。

  • vircadia-domain-server.service, vircadia-assignment-client.service, vircadia-server.target (@name なし) という名前の Systemd サービスは設定が簡素化されています

  • No file is provided to specify environment variables for the server

  • Content would be stored in /var/lib/vircadia/.local