RethinkDB: Getting started
Find out how to configure and secure your RethinkDB instance on Stackhero
Welcome to the Stackhero documentation
Stackhero offers a ready-to-use RethinkDB cloud service, designed for reliability and ease of use. You benefit from:
- Smooth updates with a single click
- High performance and enhanced security on your own private, dedicated infrastructure
Get started quickly: you can try Stackhero's RethinkDB cloud hosting in just a few minutes. Stackhero takes care of installation and management, allowing you to focus on developing your application.
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 your chosen secure password.
Connecting to the RethinkDB server using the CLI
To carry out 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 to back up your RethinkDB database:
rethinkdb dump \
--tls-cert /etc/ssl/certs/ca-certificates.crt \
-c <XXXXXX>.stackhero-network.com:29015 \
-p
Make 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.