Self-hosting the Rumble platform
Self-hosting is only available with Rumble Enterprise
The self-hosted version of Rumble allows you to run everything on-premises. It supports a fully offline mode that gives you full control over the service and includes a CLI for service, update, and user management.
The self-hosted Rumble platform has nearly the same functionality as our cloud-hosted console. The primary difference is that you are in complete control of your data. Additionally, some of our third-party integrations only work with our cloud-hosted console at this time.
Before you get started, make sure your systems meet the following requirements.
- 4 CPU Cores at 2 GHz or faster
- 100 GB of local disk storage
- 32 GB of RAM
- PostgreSQL 12 or newer (Our installer can install this for you)
Supported operating systems
- Ubuntu 20.04 64-bit
- Ubuntu 18.04 64-bit
- Red Hat Enterprise Linux 8.x 64-bit
- Red Hat Enterprise Linux 7.x 64-bit
- CentOS Linux 8.x 64-bit
- CentOS Linux 7.x 64-bit
The self-hosted Rumble platform requires the following connectivity (in online mode):
- Outbound access to console.rumble.run (184.108.40.206, 220.127.116.11) on TCP port 443 for HTTP and WebSocket traffic over TLS
Here’s what the installation process will do:
- Set up PostgreSQL and create a passworded user.
- Generate TLS certificates for your IP address located in
- Generate a configuration file at
/etc/rumble/configand set some defaults.
- Create a
systemDservice for the Rumble platform.
- Create all the necessary cron jobs required for the Rumble platform.
- Go to https://console.rumble.run/deploy/download/platform.
- Copy the command directly from the download page and run it in your terminal. This will download the installer and mark it as excecutable. The download path for the installer is uniquely keyed.
After you’ve installed the Rumble platform, you will have access to the Rumble CLI
To initialize an admin user, run:
rumblectl initial [email address]
If everything is set up correctly, you can log in to your console at
Note that you may need to enable HTTPS to pass through the Linux system firewall. Example commands:
sudo ufw allow https/tcp
sudo firewall-cmd --add-port=443/tcp
The self-hosted Rumble platform can handle updates for you. When you tell
rumblectl to update, it will download the update and then restart the service after the update is complete.
You can update the platform and scanners at the same time or separately with the CLI update management commands.
Some things you can manage:
- Adding, deleting, and listing users
- Resetting passwords
- Changing default roles
- Viewing details
- Changing organization roles
Start the Rumble service
Starts the Rumble platform service.
Stop the Rumble service
Stops the Rumble platform service.
Restart the Rumble service
Restarts the Rumble platform service.
Install the Rumble platform
Install the Rumble platform service and all required dependencies such as PostgreSQL. Creates a SystemD service, generates cron
jobs, and generates a configuration file in
Uninstall the Rumble platform
Stop and remove the Rumble platform service from SystemD and removes the generated cron jobs. This does not remove your PostgreSQL database, and it retains your data.
Purge the Rumble platform
Stop and remove the Rumble platform service from SystemD and removes the generated cron jobs. This will delete your Rumble
database and remove all the Rumble directories
Serve the Rumble platform manually
Starts the Rumble platform manually.
Update the Rumble platform and scanners
Updates the Rumble platform service and Rumble scanners. You can use the optional parameter
force to force
the update even if the current installation is the latest version.
rumblectl update [force]
Update the Rumble platform
Updates just the Rumble platform service. You can use the optional parameter
force to force the update even if
the current install is the latest version.
rumblectl update-platform [force]
Update the Rumble scanners
Updates just the Rumble scanners. You can use the optional parameter
force to force the update even if
the current installation is the latest version.
rumblectl update-scanner [force]
Create the initial administrator account
Creates the initial admin user for a new installation. You must provide an email address.
rumblectl initial <email>
List user accounts
Lists all the users along with their
email address, full name, and current roles.
rumblectl user list
Add a user account
Creates a new user account under the initial administrator user. You must provide an email address.
rumblectl user add <email>
Delete a user account
Deletes a user account. You must provide an email address. This cannot be undone.
rumblectl user delete <email>
Get user details
Gets the details for a user account. You must provide an email address. Provides information such as
full name, date created, last login IP, last login time, last activity, default organization role, and their current roles. You
must provide an email address.
rumblectl user details <email>
Set a user role
Sets a user’s role to the role provided. Email and role must be provided. The organization is optional. If the organization isn’t provided this sets their default role.
rumblectl user set-role <email> [organization name or organization ID]:<role>
Reset a user password
This will generate and apply a new password for the specified user. The password will be printed to the terminal. You must provide an email address.
rumblectl user reset <email>
List all organizations
Lists all the organizations by their name and ID.
rumblectl organization list