Frequently Asked Questions
Installation Questions
Display shows “Error response from daemon: toomanyrequests: Rate exceeded”
Question: I’m getting an error when retrieving Docker images.
Answer: There’s congestion when retrieving the Docker image. Wait for a while and then re-run the installer shell script.
Unable to Pull Container Image via Proxy
Question: I cannot retrieve container images via proxy internet connection.
Answer: You’ll need to add the proxy settings to the Docker daemon.
Docker Daemon Configuration
Create anhttp-proxy.conffile inside the/etc/systemd/system/docker.service.d/directory.sudo mkdir -p /etc/systemd/system/docker.service.d/ sudo nano /etc/systemd/system/docker.service.d/http-proxy.confAdd the following content to the file:
[Service] Environment="HTTP_PROXY=http://your-proxy-server:3128" Environment="HTTPS_PROXY=http://your-proxy-server:3128" Environment="NO_PROXY=localhost,127.0.0.1"Replace
your-proxy-serverwith the hostname or IP address of your proxy server.Reload Docker Daemon
To apply the changes, reload the Docker daemon.sudo systemctl daemon-reload sudo systemctl restart docker
Unable to install due to other displayed errors
Question: I’m getting errors and cannot install.
Answer:
- You might be running out of storage space. Please check your available storage.
- If an error message appears while executing the installer shell script, record that message and contact support.
Installation completed but unable to access
Question: Installation completed but I cannot access the Web UI.
Answer: Ensure Docker is running correctly. Execute the following command to verify that Docker is functioning properly:
sudo docker ps
If it’s working correctly, you’ll see a list of running containers.
If nothing appears or an error message is shown, recheck your Docker installation and settings.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ea5b30e0d8f7 public.ecr.aws/mediaharbor/stream:latest "/usr/local/bin/janu…" 45 seconds ago Up 10 seconds stream
30b909ec82b7 public.ecr.aws/mediaharbor/mhb:latest "/bin/bash /mnt/run.…" 45 seconds ago Up 10 seconds mhb
e4cead5b7988 public.ecr.aws/mediaharbor/ui:latest "/nodejs/bin/node se…" 45 seconds ago Up 10 seconds 0.0.0.0:3000->3000/tcp, :::3000->3000/tcp ui
9c79d6582467 public.ecr.aws/mediaharbor/api:latest "docker-entrypoint.s…" 45 seconds ago Up 11 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp api
714364d2acaf public.ecr.aws/mediaharbor/proxy:latest "/docker-entrypoint.…" 45 seconds ago Up 42 seconds proxy
590ca661bf7b mariadb:11 "docker-entrypoint.s…" 45 seconds ago Up 43 seconds 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp db
- If installed on a cloud service, please check the security group settings.
- Ensure the ports mentioned in Network Requirements are open.
Playback Questions
Can be played with regular latency, but not with low latency.
Question: I can play with regular latency mode but not with low latency mode.
Answer: In a NAT traversal environment, if the global IP address changes after installation, WebRTC connectivity will be lost.
Run installer.sh again to update the settings with the current global IP address.
Cannot play when a high-bitrate stream is input.
Question: I cannot play when a high-bitrate stream is input.
Answer: Open the advanced settings of the input source and increase the probe size setting.
Network Questions
Unable to Receive Multicast Signals in an IGMPv2 Environment
Question: I cannot receive multicast signals in an IGMPv2 environment.
Answer: On Linux, IGMPv3 is often enabled by default, but some multicast environments require switching to IGMPv2.
How to Configure IGMPv2
1. Temporarily Apply IGMPv2 for Testing
You can switch to IGMPv2 using the following command:
sudo sysctl -w net.ipv4.conf.<interface_name>.force_igmp_version=2
Example for receiving multicast on eth1:
sudo sysctl -w net.ipv4.conf.eth1.force_igmp_version=2
Once you confirm that multicast joins are occurring using IGMPv2, you can make this setting persistent.
2. Making the Setting Persistent
To retain the IGMPv2 setting after a reboot, add the following line to /etc/sysctl.conf:
echo "net.ipv4.conf.<interface_name>.force_igmp_version=2" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
Example for eth1:
echo "net.ipv4.conf.eth1.force_igmp_version=2" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
This ensures IGMPv2 remains applied after a reboot.
Multicast Packets Are Received but Not Processed
Question: Multicast packets are arriving but not being received.
Answer: On Linux, rp_filter (reverse path filtering) is enabled by default. Depending on the routing configuration, multicast packets may be mistakenly dropped.
Disabling this filter can allow proper reception of multicast packets.
1. Checking the Current State of rp_filter
cat /proc/sys/net/ipv4/conf/<interface_name>/rp_filter
Output meanings:
1→ Strict filtering (default)2→ Less strict filtering0→ Filtering disabled
Example for checking eth1:
cat /proc/sys/net/ipv4/conf/eth1/rp_filter
2. Temporarily Disabling rp_filter
You can disable rp_filter (0) with the following command:
sudo sysctl -w net.ipv4.conf.<interface_name>.rp_filter=0
Example for eth1:
sudo sysctl -w net.ipv4.conf.eth1.rp_filter=0
Once you confirm that multicast reception works, you can make this setting persistent.
3. Making the Setting Persistent
To retain rp_filter=0 after a reboot, add the following line to /etc/sysctl.conf:
echo "net.ipv4.conf.<interface_name>.rp_filter=0" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
Example for eth1:
echo "net.ipv4.conf.eth1.rp_filter=0" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
This ensures rp_filter=0 remains applied after a reboot.
License & Authentication Questions
“API KEY MISSING or WRONG API CONFIG” message displayed over the video
Question: I see “API KEY MISSING or WRONG API CONFIG” displayed over the video.
Answer: The API key you entered during installation may be incorrect.
Please run installer.sh again and re-enter the API key.

“NO LICENSE or LICENSE EXPIRED” message displayed over the video
Question: I see “NO LICENSE or LICENSE EXPIRED” displayed over the video.
Answer:
- There’s a possibility that the MediaHarbor server is unable to communicate with the license management system.
Please check if you are connected to the internet. - You might be running low on points.
Log into the License Management System and check if you have any points remaining.

Configuration & Management Questions
If You Forgot the Password Set in the Security Configure Page
Question: I forgot the password set in the security configure page.
Answer: First, ensure that MediaHarbor is stopped. If it is running, stop it using the following command:
docker-compose down
Once you’ve confirmed that MediaHarbor is stopped, run the following command to reset the password:
docker-compose run --rm api node reset_password.js
After the password reset is complete, start MediaHarbor.
docker-compose up -d
Connecting MediaHarbor to the Internal Zabbix Server
Question: I want to connect MediaHarbor to our internal Zabbix server.
Answer: MediaHarbor has a Zabbix agent installed. By configuring the firewall to open TCP port 10050, you can add MediaHarbor to the Zabbix server and monitor it.
# For AlmaLinux / Rocky Linux
sudo firewall-cmd --add-port=10050/tcp --zone=public --permanent
sudo firewall-cmd --reload
# For Ubuntu
sudo ufw allow 10050/tcp
sudo ufw reload
How to Migrate Settings to Another Server or Backup Settings
Question: I want to migrate settings to another server or backup settings.
Answer: You can copy the entire settings by copying the DB folder.
# Stop MediaHarbor (if it's running)
sudo docker-compose down
# Compress the DB folder into a tar.gz file
sudo tar -zcvf backup.tar.gz DB
# Start MediaHarbor (if needed)
sudo docker-compose up -d
# Copy the backup file to the new server
# Example: If you want to copy it to /home/user on 192.168.XXX.XXX
scp backup.tar.gz user@192.168.XXX.XXX:/home/user
# Log in to the new server and extract the transferred backup file
# Example: If you copied it to /home/user on 192.168.XXX.XXX
ssh user@192.168.XXX.XXX
cd /home/user
sudo tar -zxvf backup.tar.gz
Support Information
If the problem persists or you need further support, please reach out through the contact details below:
For conducting pilot tests in preparation for full-scale implementation, you can apply for trial points.