Software & Hardware Requirements¶
See below for a detailed list of supported and recommended versions.
If you want to deploy Grape in an environment that doesn’t fit the requirements, please contact us.
PC: IE11 (limited, see note below), Edge, Chrome 50+, Firefox 43+
Mac: Safari 9+, Chrome 50+
Linux: Chrome 50+, Firefox 43+
You don’t need to meet those requirements, if you are going to install the Desktop App on the clients.
Note on IE11: Desktop Notifications are not supported in Internet Explorer but are crucial for reaching people in a chat. For users who use IE11 we recommend to install our Desktop App. Alternatively, you can use the IE Web Notifications plugin but this is not officially supported by Grape.
PC: Windows 7, Windows 8.1, Windows 10
Mac: OS X 10.11+
iOS: iPhone 5 and later with iOS 10+
Android: Android devices with Android 5.0+
Windows 10 Mobile
Using the Grape VM image¶
Requires a VM capable of running an OVF file.
VMware vSphere 5.1+ or VMware Hypervisor 5.1+
Windows Server 2012 R2 with Hyper-V or Hyper-V Server 2012 R2 or newer.
Using a custom OS¶
Any OS that runs docker 18.03 or higher, ce only. It is recommended to choose an OS that uses systemd.
Ubuntu 16.04 LTS / 18.04 LTS
ansible 2.6 (will be installed automatically by the Grape installer)
docker-engine 18.03.0 or higher, community edition
docker compose 1.21.2 or higher
wget, curl, git, pip
your favourite editor
Using external Databases¶
Version 10.3 or higher
trigram and unaccent extension loaded and configured for the chatgrape database
pg_trgm extension from package postgresql-contrib enabled (
CREATE EXTENSION IF NOT EXISTS pg_trgm;on the chatgrape database)
unaccent extension from package postgresql-contrib enabled (
CREATE EXTENSION IF NOT EXISTS unaccent;on the chatgrape database)
gin/gist operator classes enabled:
UPDATE pg_opclass SET opcdefault = true WHERE opcname in ('gin_trgm_ops', 'gist_trgm_ops');
bundled configuration in one command:
psql -U postgres -d chatgrape -c " CREATE EXTENSION IF NOT EXISTS pg_trgm; CREATE EXTENSION IF NOT EXISTS unaccent; UPDATE pg_opclass SET opcdefault = true WHERE opcname in ('gin_trgm_ops', 'gist_trgm_ops'); "
make sure the user, in this case postgres, has root permissions on the chatgrape database
Heads up: Those values are estimations based on experience and may vary based on the activity of your users. They are calculated for concurrent users that are online at the same time. Usually there is a gap between users that could login to the users that are actually online. The bigger the organization, the bigger the gap.
less then 100 concurrent users (VM/Server)
2 vCPUs/Threads or 1 Cores
4 GB RAM
up to 500 concurrent users (VM/Server)
4 vCPUs/Threads or 4 Cores
8 GB RAM
up to 2.000 concurrent users (VM/Server)
16 vCPUs/Threads or 8 Cores
32 GB RAM
up to 8.000 concurrent users (Bare Metal Server recommended)
64 vCPUs/Threads or 32 Cores
128 GB RAM
more then 8.000 concurrent users (Cluster)
min 3 nodes, recommended 7 nodes
each node from 16-64 Threads, 32-128 GB RAM
Get in touch with our Team for help on how to setup Grape in a Kubernetes Cluster
Base Install: Grape takes up ~2,5gb and it is recommended to use an SSD.
Every update will require additional 200mb (docker images cleanup can tidy up)
Database Disk Space:
elasticsearch: ~2gb / 100 user / year depending on how many messages are written
postgres: 200mb / 100 user / year depending on how many channels are created
File Storage Hardware¶
For small setups, all files can be stored on the Grape server itself.
It is recommended to use a SAN/NAS if available.
The storage is mainly used for files that are uploaded directly to the chat. Other files include: previews for uploaded images, user avatars.
Grape can easily be configured to use any SAN/NAS solution that can be mounted with Linux.
File Storage Calculation¶
Our experience with daily Grape usage where most files are stored in other document management systems (Sharepoint, Google Drive, …) is ~30 MB / month / user (mostly screenshots, photos, PDFs).
Upload per user per month * 12 * number of users
Example (100 users):
30 MB * 12 * 100 = 36,000 MB (per year)