Hi all,
I deployed Openvidu 2.13.0 on my PC based on https://docs.openvidu.io/en/2.13.0/deployment/deploying-on-premises/
Then i connected classroom-demo app to this server. Everything works fine as its on localhost and my PC has internet connection. What i must do to deploy Openvidu Server on my company LAN (without any internet connection) computer? i must load docker images, but what happend to coturn? does it need internet connectio to work?
OpenVidu installation script is implemented assuming you can download software from Internet. If you can not use Internet, download docker images and install them in target computer.
Also, you have to set manually the machine IP in COTURN_IP
in openvidu-server in docker-compose
instead of relaying on /usr/local/bin/discover_my_public_ip.sh
script.
Something like:
openvidu-server:
image: openvidu/openvidu-server:2.13.0
restart: on-failure
network_mode: host
entrypoint: ['/bin/bash', '-c', 'export COTURN_IP=XX.XX.XX.XX; /usr/local/bin/entrypoint.sh']
Also, if you plan to use recording, you should donwload also recording container.
Hi,
Thanks Micael for replying, I’m new to docker, would you please explain more about this (how i must do this):
Replace openvidu-server
service in docker-compose.yml
with the following content:
openvidu-server:
image: openvidu/openvidu-server:2.13.0
restart: on-failure
network_mode: host
entrypoint: ['/bin/bash', '-c', 'export COTURN_IP=XX.XX.XX.XX; /usr/local/bin/entrypoint.sh']
And the value XX.XX.XX.XX
must be the public IP of the installation machine.
Hey folks, i have problem regarding similar configuration. I have openvidu-server-kms 2.13 ruining on linux machine that is in my network on a docker. Do i need to install coturn so i can process the video because at the moment im receiving the following :
p.s. On local machine everything is working fine
why is disconnecting? What could be the problem?
IceConnectionState of RTCPeerConnection ac22d7fe-1c47-4a01-a46f-f5c8a5a89b80 (str_IPC_L1GU_ipc_IPCAM_rtsp_DJZL_170_93_143_139_rtplive_470011e600ef003a004ee33696235daa) change to “checking”
‘Subscriber’ (str_IPC_L1GU_ipc_IPCAM_rtsp_DJZL_170_93_143_139_rtplive_470011e600ef003a004ee33696235daa) successfully subscribed
Peer remote stream MediaStream {id: “823ca678-9d27-4778-93b5-26564e64e3ac”, active: true, onaddtrack: null, onremovetrack: null, onactive: null, …}
Video srcObject [[object MediaStream]] updated in stream [str_IPC_L1GU_ipc_IPCAM_rtsp_DJZL_170_93_143_139_rtplive_470011e600ef003a004ee33696235daa]
WebRtc stats not enabled
Subscribed correctly to ipc_IPCAM_rtsp_DJZL_170_93_143_139_rtplive_470011e600ef003a004ee33696235daa
IceConnectionState of RTCPeerConnection 016ea05c-01ca-4e34-9b4d-b7ce4e363534 (str_IPC_FCwm_ipc_IPCAM_rtsp_W4LB_170_93_143_139_rtplive_470011e600ef003a004ee33696235daa) change to “disconnected”. Possible network disconnection
pc.oniceconnectionstatechange
IceConnectionState of RTCPeerConnection ac22d7fe-1c47-4a01-a46f-f5c8a5a89b80 (str_IPC_L1GU_ipc_IPCAM_rtsp_DJZL_170_93_143_139_rtplive_470011e600ef003a004ee33696235daa) change to “disconnected”. Possible network disconnection
pc.oniceconnectionstatechange
New video element associated to e {videos: Array(1), lazyLaunchVideoElementCreatedEvent: false, ee: l, stream: t, remote: true, …}
Please open new thread as your issue seems very different.
Is there any way to use hostname instead of coturn_ip?
I’d like to use Global Accelerator in AWS Service for turn server.
I have to use FQDN for this.( https://aws.amazon.com/ko/global-accelerator/ )
No, it is not possible as it is a limitation of the underlying ICE library libnice.
We already used Global Accelator for turn service with openvidu-pro 2.12.0
V2.12.0 Configure
/opt/openvidu/application.properties
coturn.ip=openvidu-ga.domain.com <- domain
token value
wss://openvidu-ga.domain.com:4443?sessionId=ses_GngQpFvCAl&token=tok_FS3nstWMlG61gyhQ&role=PUBLISHER&version=2.12.0&coturnIp=openvidu-ga.domain.com&turnUsername=VHNDFO&turnCredential=uvh9dn&webrtcStatsInterval=30"
turnIp returned domain name.
V2.14.0 Configure
/opt/openvidu/docker-compose.yml
entrypoint: [’/bin/bash’, ‘-c’, ‘export COTURN_IP=openvidu-v2-pre.domain.com; /usr/local/bin/entrypoint.sh’]
token value
wss://openvidu-v2-pre.domain.com?sessionId=ses_SDMElga6xw&token=tok_A6E65pQO3qSeV2D8&role=PUBLISHER&version=2.14.0&coturnIp=13.124.XX.XX&turnUsername=IPYRBC&turnCredential=pnn16n&webrtcStatsInterval=30
coturnIp returned Ip value.
docker-compse logs openvidu-server
openvidu-server_1 | [INFO] 2020-05-19 01:28:36,872 [main] io.openvidu.server.coturn.CoturnCredentialsService - COTURN IP: 13.124.XX.XX
openvidu-server_1 | [INFO] 2020-05-19 01:28:36,872 [main] io.openvidu.server.coturn.CoturnCredentialsService - COTURN Redis DB accessible with string “ip=127.0.0.1 dbname=0 password=turn connect_timeout=30”
openvidu-server_1 | [INFO] 2020-05-19 01:28:36,872 [main] io.openvidu.server.coturn.CoturnCredentialsService - Cleaning COTURN DB…
openvidu-server_1 | [INFO] 2020-05-19 01:28:36,872 [main] io.openvidu.server.coturn.CoturnCredentialsService - Path of COTURN log files: /var/log/
openvidu-server_1 | [ERROR] 2020-05-19 01:28:36,874 [main] io.openvidu.server.coturn.CoturnCredentialsService - COTURN DB is not empty
openvidu-server_1 | [INFO] 2020-05-19 01:28:36,874 [main] io.openvidu.server.coturn.CoturnCredentialsService - Using COTURN credentials service for BASH environment
openvidu-server_1 | [INFO] 2020-05-19 01:28:36,880 [main] io.openvidu.server.pro.utils.GeoLocationByIpPro - Trying to load user location database…
openvidu-server_1 | [INFO] 2020-05-19 01:28:37,329 [main] io.openvidu.server.pro.utils.GeoLocationByIpPro - Database was loaded successfully
You are right.
Kurento Media Server doesn’t allow a TURN server specified with FQDN.
Any browser does allow a TURN server server specified with FQDN.
We got a ip value for coturn IP even though we set a domain.
entrypoint: [’/bin/bash’, ‘-c’, ‘export COTURN_IP=openvidu-v2-pre.domain.com; /usr/local/bin/entrypoint.sh’] <- set a domain value
io.openvidu.server.coturn.CoturnCredentialsService - COTURN IP: 13.124.XX.XX <- IP value
Domain is translated IP value.
What is the best way to get a domain value?
We found out something changed in your git repository.
It seems to convert the domain to ip.
Yes… He have added it because now TURN is configured also in KMS.
If you want to configure TURN only in browser, then is better to configure it directly in openvidu-browser:
I hope it helps in your use case.