This installation guide is only available for Linux at this time. If you are running macOS, you can run a local Object Server. Realm Object Server does not yet support Windows.

Install Realm Object Server

Realm’s package repositories are managed through a service called PackageCloud.

Run the following commands to set up the package repositories, then install and start Realm Object Server:

# Setup Realm's PackageCloud repository
curl -s https://packagecloud.io/install/repositories/realm/realm/script.rpm.sh | sudo bash

# Install the Realm Object Server
sudo yum -y install realm-object-server-developer

# Enable and start the service
sudo chkconfig realm-object-server on
sudo service realm-object-server start
# Setup Realm's PackageCloud repository
curl -s https://packagecloud.io/install/repositories/realm/realm/script.rpm.sh | sudo bash

# Install the Realm Object Server
sudo yum -y install realm-object-server-developer

# Enable and start the service
sudo systemctl enable realm-object-server
sudo systemctl start realm-object-server
# Setup Realm's PackageCloud repository
curl -s https://packagecloud.io/install/repositories/realm/realm/script.deb.sh | sudo bash

# Update the repositories
sudo apt-get update

# Install the Realm Object Server
sudo apt-get install realm-object-server-developer

# Enable and start the service
sudo systemctl enable realm-object-server
sudo systemctl start realm-object-server

We also provide public AMIs for Amazon EC2, based on Ubuntu 16.04. For details on the difference between Paravirtual and HVM see this guide.

  Paravirtual HVM
ap-northeast-1 (Tokyo) ami-825c25e5 ami-535c2534
eu-west-1 (Ireland) ami-57291e24 ami-51291e22
us-east-1 (N. Virginia) ami-542bc042 ami-5d2bc04b

You can launch these AMIs just as any other Amazon EC2 AMI. Make sure you open port 22/TCP (ssh) and 9080/TCP (dashboard and client access). The default SSH user is ubuntu.

Setting Up the Realm Dashboard

You will need access to a web browser either on the local Linux machine, or remotely over the network. If you are using a remote browser, you will need to know the network IP address or hostname of the server you just installed ROS on. Replace localhost with the appropriate IP address or hostname in the URL below.

Open a new browser window and go to http://localhost:9080. The login page for the Realm Dashboard will be displayed. If your Linux server is not your local machine, replace localhost with the IP address of your server.

Create an admin user by entering your email and password. After registering, you can log in using these credentials.

The Realm Dashboard will show you the status of the Realm Object Server, including active network connections, active Realms, and the amount of network traffic being generated by connected apps.

Troubleshooting

Check firewall rules for external access to the Realm Dashboard

Certain factors may impact external (non-localhost) access to the Realm Object Server’s synchronization facility, and the Realm Dashboard. In order to enable access to the dashboard, it may be necessary to open port 9080 on your server(s).

Using the standard Linux tools, these commands will open access to the port:

sudo iptables -A INPUT -p tcp -m tcp --dport 9080 -j ACCEPT
sudo service iptables save

Please refer to the CentOS 6 Documentation for more information regarding how to configure your firewall.

sudo firewall-cmd --get-active-zones
sudo firewall-cmd --zone=public --add-port=9080/tcp --permanent
sudo firewall-cmd --reload
sudo ufw allow 9080/tcp
sudo ufw reload

If your environment does not use your distribution’s standard firewall, you will have to modify these instructions to fit your environment.

What’s next?

Now that you’ve set up your Object Server, you can check out the demo app. There’s full source code for iOS and Android!