Snaps FAQ

circle-info

If you have questions about snaps, ask them in the #ubuntu-snaparrow-up-right channel.

chevron-rightWhen will my snap installation get the latest release?hashtag

Snaps are one of our biggest install base. They are also auto-updating. As a result, we like to spend more time testing before releasing. Updated Snaps are usually released around the 15th of the month - around two weeks after a new release. This gives us time to look for issues, so you don't have to. If you have special requirements and need to use the latest release immediately, please consider another installation method, e.g., docker.

chevron-rightHow do I access my site at a different port? How do I enable TLS/SSL with my snap?hashtag

You can change the default port (3000) to something else by changing the port configuration option. For example, if you wanted to change the HTTP port to 8080 instead of 3000:

sudo snap set rocketchat-server port=8080

Ensure you restart the rocketchat-service service afterward for the change to take effect. You only need to restart the Rocket.Chat application itself, not the database or Caddy.

For enabling TLS/SSL, check out our guide for enabling caddy herearrow-up-right.

chevron-rightUbuntu 18.04 LTS gives the message "snap not found", what's wrong?hashtag

Make sure you're using x64 or amd64 (or armhf) images, especially on VPS or VMs. x86 (32-bit) is not supported.

chevron-rightHow do I manually update to a new release?hashtag

While updates happen automatically, usually within 6 hours from the time of release, you can update manually by issuing this command:

sudo snap refresh rocketchat-server
chevron-rightHow do I revert to the previous version of Rocket.Chat?hashtag
sudo snap revert rocketchat-server
chevron-rightHow do I list the services shipped with Rocket.Chat snap?hashtag

The Rocket.Chat snap provides three services. Outside of the snap context, globally, each service is named like snap.<SnapName>.<SnapServiceName>. Look at the table to have a better understanding.

You can check the list of services yourself with:

Look for the services section.

Service
Snap Service Name
Systemd Service Name

MongoDB

rocketchat-mongo

snap.rocketchat-server.rocketchat-mongo

Caddy

rocketchat-caddy

snap.rocketchat-server.rocketchat-caddy

Rocket.Chat

rocketchat-server

snap.rocketchat-server.rocketchat-server

chevron-rightHow do I tell if Rocket.Chat is actually running?hashtag

You can check whether either or all of them are running or not with the following command:

Look into the third column (Current) that logs the current state of the services.

Another option is to use the systemctl command. To quickly check if a service is active or not, use the is-active subcommand or the more well-known status subcommand. See the table above to know the name of the service you want to inspect.

Or use the status subcommand:

chevron-rightHow can I view the logs?hashtag

You can either use the snap logs command, or the systemd alternative, journalctl. Always refer to this table to know which service name to use where.

Using snap logs:

To see the logs from Rocket.Chat using journalctl:

To see the logs from Mongo or Caddy:

chevron-rightHow do I schedule updates?hashtag

If you don't want snaps just updating when available, you can set when your snaps will update.

The following example asks the system only to update snaps between 4.00am and 7.00am, and 7.00pm and 10:10pm:

You can find more about your options in the snapcraft documentationarrow-up-right.

chevron-rightI need to restart Rocket.Chat, how do I do this?hashtag

This follows the similar structure as many of the previous questions. You can use both the snap command or systemctl to restart RocketChat.

With snap you get the added benefit of restarting all of the services with a single command:

You can also restart each service individually:

To restart Rocket.Chat using systemctl:

Mongo and Caddy can similarly be restarted:

chevron-rightWhat is the Restart Policy?hashtag

The snap's policy is to restart on failure.

chevron-rightHow do I restore backup data to my Snap?hashtag
chevron-rightHow do I back up my Snap data?hashtag
chevron-rightHow do I access the MongoDB Shell?hashtag

You might want to access the mongo shell shipped with our Rocket.Chat snap. To do so, run:

chevron-rightHow do I edit MongoDB configuration?hashtag

You can find the mongod configuration file in /var/snap/rocketchat-server/current/mongod.conf.

chevron-rightHow do I add an option to mount media?hashtag

The interface providing the ability to access removable media is not automatically connected upon installation, so if you'd like to use external storage (or otherwise use a device in /media for data), you need to give the snap permission to access removable media by connecting that interface:

chevron-rightWhat folders do snaps use?hashtag
  • Your actual snap files for each version of Rocket.Chat are copied to: /var/lib/snapd/snaps and they are mounted in read-only mode.

  • Your snap common directory is: /var/snap/rocketchat-server/common/; file uploads to disk and the database are stored here.

  • Your snap data directory is /var/snap/rocketchat-server/<version>; this is a versioned folder.

  • You can access the current snap data directory at /var/snap/rocketchat-server/current.

chevron-rightHow do I remove a specific previous version of Rocket.Chat?hashtag

You can do this by issuing the following command, where N is the desired version:

chevron-rightHow do I add a tool like strace to debug what's happening in my snap?hashtag
chevron-rightHow do I change Rocket.Chat PORT, MONGO_URL, and MONGO_OPLOG_URL in my snap?hashtag

Starting from release 0.73, it is possible to configure these environmental variables through snap hooks like this:

Remember to restart rocket.chat service after setting new values:

This is an example to run rocket.chat on port 4000 instead of 3000 and set database name to rocketchat instead of parties:

chevron-rightHow do I change other environmental variables in my snap?hashtag

Starting from release 0.73, it is possible to overwrite any Rocket.Chat environmental variables dropping files ending in .env in $SNAP_COMMON directory (/var/snap/rocketchat-server/common/), for example, you can create a file to change SMTP settings:

Remember to restart rocket.chat service after creating .env files:

More than one .env file is allowed, and more than one environmental variable defined per file is allowed.

chevron-rightHow do I set Rocket.Chat Registration Token on Snaphashtag

To set a registration token for your server, create any file ending in .env under /var/snap/rocketchat-server/current/ with content:

Then restart your server

Last updated