The docker-compose.setup.ove.yml
file is used as a template to generate the docker-compose.yml
file. The docker-compose.yml
file is used to start the services.
- Using a python3 environment with the
pyyaml
library added, runpython configure.py develop
to create thedocker-compose.yml
file. The script should automatically detect the IP address of the host machine and use it to configure the services. - Run
docker-compose up -d
to start the OVE services. - There is a convenience script,
run_develop.sh
which combines the above two steps for running in develop mode. - The Dash app should be available at http://localhost:8050/.
- The OVE landing page should be available at http://localhost:8080. After a minute or two there should be all the sections defined and set up.
N.B. The configure.py
setup process is required because the actual IP address of the host machine is needed to configure the services. localhost
or 127.0.0.1
cannot be used (at least OVE doesn't work).
A test version of the app is deployed at http://liionsden.rcs.ic.ac.uk:8080/ (internal access only).
This service is mostly automated with a few steps required to be run outside of the docker container causing some limitations. To run a production version of this, the required files and directories are:
docker-compose.setup.ove.yml
configure.py
run.sh
config/
logs/
- this can be emptydata/
- for the pre-set data (this data needs to be added manually)- A
.env
file to defineMY_SECRET
for the OpenVidu login
To run the production version should be as simple as running bash run.sh
with the above files alongside a docker-compose.override.yml
for watchtower etc.
Utimately, we will want to automate this setup as much as possible so the environment (local testing vs. deployment) is autodetected. For now, the configuration files differ from those generated in the above setup in the following ways:
config/default.conf:
- server_name "";
+ server_name liionsden.rcs.ic.ac.uk;
There is also a requirements to have the OpenVidu server running - see Deploying OpenVidu CE on premises
(Start from step 3 if the vis system is already up and running)
- Make sure nothing's running
- Run
bash run_develop.sh
for vis system to run config script anddocker-compose.yml
- For production, use
run.sh
when using pre-set data, orrun_live.sh
when using the live model.
- For production, use
- Go to OVE Core at the IP address defined in the
API_URL
environment variable you will now find indocker-compose.yml
- Go to OpenVidu IP address and manually trust website (OPENVIDU_HOST in the
docker-compose.yml
) - Log in with username: admin, password: (OPENVIDU_SECRET from docker-compose.yml)
- Return to OVE Core, open the View for the desired WebRTC space - link under Space Layouts, will be something like
IP
/view.html?oveViewId=PC01-Top-0 - Open the Controller - link is ID Number under Sections
- Start the call from the Controller - will generate and display a Session ID
- Copy the Session ID into the OpenVidu textbox to join the call (there should be three users connected to the call)
- Share the application (NMX) window into the video call
- Go to the Controller and select the desired screen to share. It should have a yellow box around it once selected.
- Confirm the view is displaying the screen.
Note: Only one screen can be shared from one browser, so multiple screens will require multiple computers/browsers/incognito windows etc.