Description
#!/bin/bash
set -o nounset
errcho() {
echo "$@" >&2
}
show_help() {
cat << EOM
rocketchatctl command line tool to install and update RocketChat server
Usage: $(basename "$0") [options] [--root-url=ROOT_URL --port=PORT --letsencrypt-email=EMAIL --webserver=WEBSERVER --version=VERSION --install-node --use-mongo]
Installs node, mongo, RocketChat server and optionally a webserver (Caddy or Traefik), sets up directories and permissions to use Let's Encrypt certificates.
In case node or mongo already installed, it uses already installed versions though confirmation is required.
For node it set $NODE_VERSION as default in your system, for mongo wiredTiger storage engine and no authentication enabled is required during installation.
If you wish this script to run unattended, provide extra flags to the install option, server URL is required (--root-url).
OPTIONS
-h help Display this message
install Install latest RocketChat server version
This file has been truncated. show original
Just tried using rocketchatctl to upgrade, seems like it doesn’t include installation for Deno. Was wondering why Rocketchat couldn’t start up until I checked logs.
Is rocketchatctl still an official install / upgrading tool? Seems like the executable’s last update was 3 years ago.
reetp
June 1, 2025, 8:35am
2
Don’t think it has been for some while. I will check.
As per docs I believe recommended installs are via docker-compose or snap.
Shame - was a pretty stable program, just probably missing some updates to new repos like Deno to pull from.
I installed the server with this executable way back, took care of the entire setup for me hassle-free - hope it’ll still be supported for us old users.
reetp
June 4, 2025, 10:07am
4
I really don;t know what the situation is.
I have asked the person who is most likely to know. Just have to see if they respond.
Thanks for helping to check, @reetp ! Fingers crossed
Definitely welcome PRs to fix this.
Essentially this needs to make sure to happen in the install script: Deploy on Debian
Specifically:
Deploying Rocket.Chat requires Deno .
Only Deno versions >=1.37.1 and <2.0.0 are supported.
Follow the official Deno installation guide to install the correct version.
Follow up here..
I’ve added denoVersion to the https://releases.rocket.chat/7.1.0/info response so much like rocketchatctl gets nodeVersion from this response, the same can be done for deno:
# if n not found, install nvm to manage node versions
mkdir /opt/nvm
local nvm_version=$(curl -s https://api.github.com/repos/nvm-sh/nvm/releases/latest | jq .tag_name -r)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/$nvm_version/install.sh | NVM_DIR=/opt/nvm bash
source /opt/nvm/nvm.sh # ensure nvm and other node commands are available for the current session
}
get_supported_node_version() {
# if api returns nodeVersion, then use that
# else it's pre node14 days
local node_version=$(curl -s "$ROCKET_VERSION_INFO_URL" | jq -r '.nodeVersion // empty')
NODE_VERSION=${node_version:-v12.22.8}
}
get_supported_mongo_version() {
# if mongo_version was passed to the cli
if [[ -n $MONGO_VERSION ]]; then
local mongo_version=(${MONGO_VERSION/./ })
MONGO_VERSION_WITHOUT_PATCH="${mongo_version[0]}.${mongo_version[1]}"
return
fi
1 Like