RethinkDB: Getting started
Learn how to configure and secure your RethinkDB instance on Stackhero
👋 Welcome to the Stackhero documentation!
Stackhero offers a ready-to-use RethinkDB cloud solution that provides a host of benefits, including:
- Effortless updates with just a click.
- Optimal performance and robust security powered by a private and dedicated VM.
Save time and simplify your life: it only takes 5 minutes to try Stackhero's RethinkDB cloud hosting solution!
Set your admin password
Securing your RethinkDB instance on Stackhero begins with setting a strong admin password. To do this, connect to the RethinkDB web interface, go to the Data Explorer tab, and run the following query:
r.db('rethinkdb').table('users').get('admin').update({ password: '<PASSWORD>' })
Replace <PASSWORD> with the secure password of your choice.
Connecting to the RethinkDB server using the CLI
To perform dump or restore operations on your RethinkDB instance, you can use the RethinkDB CLI from your local machine or any other server. All Stackhero services use encrypted connections (TLS) by default, so you need to provide the --tls-cert parameter to specify the location of your local CA certificates.
For example, here’s how you can back up your RethinkDB database:
rethinkdb dump \
--tls-cert /etc/ssl/certs/ca-certificates.crt \
-c <XXXXXX>.stackhero-network.com:29015 \
-p
Be sure to replace <XXXXXX> with the actual name of your Stackhero instance.
Connecting Node.js to RethinkDB
Since connections to RethinkDB are secured with TLS, and the official RethinkDB client library does not support TLS, it is recommended to use the rethinkdbdash library instead.
You can install rethinkdbdash with npm:
npm install rethinkdbdash
Here is a simple example showing how to connect your Node.js application to your RethinkDB database. This configuration includes server details such as host and port, connection limits, and SSL settings.
const rethinkdbdash = require('rethinkdbdash');
const r = rethinkdbdash({
servers: [
{
host: '<XXXXXX>.stackhero-network.com',
port: 28015
}
],
ssl: true,
buffer: 20, // Minimum number of connections to keep open
max: 100, // Maximum number of connections
timeoutGb: 30 * 1000, // Time (ms) to keep unused connections
db: '<DATABASE>',
authKey: '<PASSWORD>',
// silent: true, // You can uncomment this line to disable logging on stderr
});
Replace <XXXXXX>, <DATABASE>, and <PASSWORD> with your own values.
By following these steps, your RethinkDB instance will be secured and ready to use on Stackhero. If you have any questions or need further assistance, please feel free to contact our support team.