Contextual Audio Editing

Deploy CAE using Docker

Precondition: a Linux machine having docker installed

Docker

Pull Docker image from our public docker registry

docker login --username MyCredentials --password MyPassword https://docker-registry-public.davidsystems.com
docker pull docker-registry.davidsystems-public.com/cae:latest

As an alternative you could also import a docker image from a file we provide.

docker import cae.tar.gzip

Remove previously running container (optionally)

docker stop cae
docker rm cae

Run container with CAE

docker run -d --name cae -p 8888:80 docker-registry-public.davidsystems.com/cae:latest

The CAE container is exposed on port 8888 for HTTP.

To handle HTTPS we recommend to run it behind a reverse-proxy that is doing SSL-offloading.

Adapt Settings Manually

Currently there are two options to adapt the settings files in the container

  • Edit the settings directly in the container

    docker exec -it cae /bin/sh
    apk add nano
    nano /user/share/nginx/html/assets/settings.json
    
  • Overwrite the settings files using the docker cp command

    docker cp ./mySettings.json cae:/usr/share/nginx/html/assets/settings.json
    

    See Configure CAE with new settings.json

Automatically Copying Settings Files From Host At Container Startup

(1) Create a docker volume

docker volume create caeVol

This creates a docker volume named caeVol which is mapped to folder /var/lib/docker/volumes/caeVol/_data.

(2) Copy your setting files to the volume on the host

  • settings.json

(3) Mount the volume when starting a container instance

docker run -d --name cae -p:8888:80 -v caeVol:/data docker-registry-public.davidsystems.com/cae:latest

This uses the volume and maps it to /data inside the container.

The container checks for settings files on startup and uses them to overwrite the ones delivered with the docker image.


Using Environment Variables for Configuration of CAE Docker Container

As an alternative to modifying and injecting the settings.json file you can also use environment variables.

The name of the environment variable must start with “CAE__” and match the names inside the settings.json file.

Double underscores between names are used to map the hierarchies inside settings.json.

Square brackets are used to reference array elements.

Name postfixes are used to specify variable types different from string, e.g. “:I" for integer or “:B” for boolean.

Examples:

CAE__variables__basePath=https://dpe.davidsystems-test.com:7878/DpeWebApplication
CAE__caeSettings__contentManagerUrl=https://www.spiegel.de
CAE__caeSettings__importViaPostMessageApi__origins[0]=http://bla
CAE__caeSettings__importViaPostMessageApi__origins[1]=http://bli
CAE__test__bla=bli
CAE__test__blo:I=123