Prepare host OS - Ubuntu

Install Ubuntu

Ubuntu 18.04 and 20.04 are supported. Use the server edition without GUI.

Disable nouveau driver

nouveau, the open-source driver for Nvidia GPUs is usually pre-loaded. It must be disabled to install Nvidia's own driver.

sudo modprobe -r nouveau

Prevent loading of the nouveau kernel module at boot.

echo "blacklist nouveau" | sudo tee /etc/modprobe.d/blacklist.conf

Install Nvidia driver

This installs Nvidia headless driver (without GUI support).

sudo apt-get update
sudo apt install nvidia-headless-515 nvidia-utils-515 libnvidia-encode-515
sudo modprobe nvidia

Check Nvidia driver works

 nvidia-smi

Install Docker CE

Follow the official Nvidia docs

Use docker command without sudo

This allows running the docker command as a non-root user.

sudo groupadd docker
sudo usermod -aG docker $USER
newgrp docker

Install NVIDIA Container Toolkit

Setting up docker-compose

Docker is installed, but docker-compose is also needed. Let's install it by following these steps.

sudo curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Check docker-compose works

You can check the docker-compose installation by running this command which should give you a meaningful output with the version number:

docker-compose version

Adjust firewall rules

Live Transcoder needs some firewall ports opened to work properly. Either open them by:

sudo ufw allow 22/tcp comment 'accept SSH'
sudo ufw allow 80/tcp comment 'accept HTTP & HLS'
sudo ufw allow 443/tcp comment 'accept HTTPS & HLS'
sudo ufw allow 5353:7999/tcp comment 'accept NDI TCP'
sudo ufw allow 5353:7999/udp comment 'accept NDI UDP'
sudo ufw allow 1024:65535/udp comment 'accept MPEG-TS UDP/RTP/SRT'
sudo ufw allow from 192.168.0.0/24 to 224.0.0.0/24 proto igmp comment 'accept IGMP'
sudo ufw enable
sudo ufw status

or disable the firewall completely by these. Disabling the firewall completely can improve performance in high-bitrate use cases.

sudo ufw disable
sudo ufw status

Disable mDNS on the host

The mDNS service mustn't be active in the host OS for NDI discovery to work. To remove it completely from the host OS:

sudo apt-get remove avahi-daemon

Install systemd-coredump

It's needed for the creation of diagnostic packages when something goes wrong.

sudo apt install systemd-coredump

What’s Next

Continue to