Meeting Rooms Installation & Upgrade

Requirements

Important

The Meeting Rooms is an enterprise version feature. To enable it, please contact XiVO team.

Important

The Meeting Rooms components works only if you have the XiVO Edge component installed and configured.

Server Requirements

The Meeting Rooms components must be installed on a different server as the XiVO CC/UC server.

The minimal requirements would be:

  • OS: Debian 13 (Trixie), 64 bits

  • CPU: 4 CPU

  • RAM: 8 Gb

See: https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-scalable#machine-sizing

Base installation

1. Docker & Docker compose Installation

These commands will install docker and docker compose on the host.

# Install docker prerequisites
apt update
apt install apt-transport-https ca-certificates curl gpg

# Add Docker's official GPG key:
apt install ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF

cat > /etc/apt/preferences.d/docker-ce <<EOF
Package: docker-ce*
Pin: version 5:28*
Pin-Priority: 1000
EOF

cat > /etc/apt/preferences.d/containerd <<EOF
Package: containerd.io*
Pin: version 2.*
Pin-Priority: 1000
EOF

apt update
apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

#Install docker compose v2
apt update
apt install docker-compose-plugin

mkdir -p /etc/systemd/system/containerd.service.d
cat > /etc/systemd/system/containerd.service.d/override.conf <<EOF
[Service]
LimitNOFILE=100000
EOF

systemctl daemon-reload
systemctl restart containerd.service

2. XiVO Meeting Rooms Launcher Setup

  1. Create meetingrooms directory:

    mkdir -p /etc/docker/meetingrooms
    
  2. Download XiVO Meeting Rooms configuration. In the following script replace TAG_OR_BRANCH by the name of a tag or a branch.

    Note

    currently to install the latest stable version of quantum, use TAG_OR_BRANCH=2026.05.00

    TAG_OR_BRANCH=2026.05.00
    cd /etc/docker/meetingrooms
    wget "https://gitlab.com/xivo.solutions/xivo-meetingrooms/-/archive/${TAG_OR_BRANCH}/${TAG_OR_BRANCH}.tar.gz"
    tar -zxvf ${TAG_OR_BRANCH}.tar.gz -C /etc/docker/meetingrooms --strip-components 1
    rm ${TAG_OR_BRANCH}.tar.gz
    
  3. Create the jitsi configuration directory:

    cd /etc/docker/meetingrooms
    mkdir -p jitsi/{web/letsencrypt,transcripts,prosody/config,prosody/prosody-plugins-custom,jicofo,jvb,jigasi,jibri}
    
  4. Create bash alias to launch services:

    echo -e "Current alias for meetingrooms-dcomp is:\n$(alias meetingrooms-dcomp)"
    sed -i '/alias meetingrooms-dcomp=/d' ~/.bashrc
    echo "alias meetingrooms-dcomp='docker compose -p meetingrooms -f /etc/docker/meetingrooms/xivo-meetingrooms.yml --env-file=/etc/docker/meetingrooms/.env'" >> ~/.bashrc
    source ~/.bashrc
    echo -e "New alias for meetingrooms-dcomp is now:\n$(alias meetingrooms-dcomp)"
    

3. Next step

Congrats: You’re done with the Meeting Rooms Installation.

Upgrade Meetingrooms

Currently there is no automatic upgrade process. Here is the manual process that you need to follow on the Meeting Room server.

  • Make a backup of the Meeting Room launcher:

    MR_BCK_DIR=$(mktemp -d -p /var/tmp/ meetingrooms-backup.XXXXXXXX)
    cp -arT /etc/docker/meetingrooms/ ${MR_BCK_DIR}
    echo "Backup was created in ${MR_BCK_DIR}"
    
  • Re-install the Meeting Room Launcher (it will override the .yml files): follow the 2. XiVO Meeting Rooms Launcher Setup steps to install new version

    Note

    This step overrides the current .yml files. If you had made some customization in them you will have to backport them by comparing the new one with the backup you did at previous step. You can use this to show the diff between the newly installed yml files and the backup:

    for ymlfile in $(ls -1 /etc/docker/meetingrooms/*.yml);
      do diff -Zu "${MR_BCK_DIR}/$(basename ${ymlfile})" "${ymlfile}";
    done
    
  • And then verify that the content of the .env file is correct:

    • Update the .env file using the script referenced in Meeting Rooms Configuration section.

      diff -Zu "${MR_BCK_DIR}/.env" "/etc/docker/meetingrooms/.env"
      
    • Verify that the XIVOCC_TAG and XIVOCC_DIST correspond to what you want to install (it should be 2026.05 and latest).

  • Finally pull the new images and restart the containers:

    Warning

    it will stop all Meeting Room calls (and disconnect users from the application).

    docker login -u xivoxc
    (use the token provided by the XiVO team)
    
    meetingrooms-dcomp pull && docker logout
    meetingrooms-dcomp up -d