Reference15r1:Concept innovaphone App Platform Docker Container
![]() |
FIXME: Below described feature is experimental and not officially supported for use in productive environments. |
The innovaphone App Platform Docker container provides a myApps App Platform instance that includes the AP Manager, Webserver and PostgreSQL. This container offers a ready-to-use environment for myApps applications and the innovaphone PBX.
Image Information
This chapter provides details about the Docker image used for the innovaphone App Platform.
Repository Details
- Repository Host
- docker.innovaphone.com
- Image Name
- cloud/kubernetes/innovaphone-platform-instance
docker.innovaphone.com/cloud/kubernetes/innovaphone-platform-instance:latest
Tagging and Versioning
The image is usually tagged with the build number according to innovaphone software releases:
- Latest Tag
- Use the latest tag for pulling the most recent service release.
- Release Build Number
- For production or version-specific deployments, use a specific build number as the tag (e.g., 130006).
Example:
docker pull docker.innovaphone.com/cloud/kubernetes/innovaphone-platform-instance:130006
Supported Architecture
This Docker image supports the linux/amd64
architecture.
Image Reference
An example of a full image reference using a specific release build number would be:
docker.innovaphone.com/cloud/kubernetes/innovaphone-platform-instance:130006
Ports
This chapter outlines the various ports exposed by the Docker container. The webserver ports are available immediately upon container startup, after start of the AP Manager and the Webserver, while the additional application ports become active after the app installation. In most cases, a one-to-one mapping is used, meaning the container port is mapped directly to the same host port unless otherwise specified.
Webserver Ports
- HTTP
Container Port: 8080 Description: Used for accessing the built-in webserver immediately upon container startup.
- HTTPS
Container Port: 8082 Description: Used for accessing the built-in webserver immediately upon container startup.
Additional Application Ports
Following additional container ports are avilable depending on installed and configured applications:
- H323/TLS
- 1300
- SIP
- 5060
- SIPS
- 5061
- LDAPS
- 1636
- SMTP
- 8025
- SMTPS
- 8587
Additional hint for Portmapping
docker run -d \
--name=innovaphone \
--restart unless-stopped \
-p 9090:8080 \ #Container Host Port (external) 9090:8080 Container Port
-p 9091:8082 \
-p 5060:5060 \
-p 5061:5061 \
-p 1300:1300 \
-p 1636:1636 \
-p 8025:8025 \
-p 8587:8587 \
-v /path/of/data/innovaphone:/mnt/data \ #in this path you will find Apps, DBs & Logs
#this path musst be used for backups!!
-e WEBSERVERPORTHTTP=8080 \
-e WEBSERVERPORTHTTPS=8082 \
-e LOG_FLAGS=7 \
-e LOG_SIZE=1048576 \
-e DNSIPV4=8.8.8.8 \
-e LIMIT_RAM=512 \ #Ram limit in MB
-e LIMIT_DISK=10 \ #disk size in GB
-e TZ=Europe/Berlin \
docker.innovaphone.com/cloud/kubernetes/innovaphone-platform-instance:latest
Environment Variables (ENVs)
This chapter outlines the key environment variables used to configure the behavior of the innovaphone App Platform Docker container. These variables allow you to customize logging, port settings, resource limits, and more during startup and runtime.
- LOG_FLAGS
- Defines the integer representation for the trace flags of the AP Manager, according flags activated under the AP Manager / Diagnostics. See browser console message on Save button press (e.g. "logFlags":1 , if the "App" flag is activated).
LOG_FLAGS=7
- LOG_SIZE
- Specifies the maximum size in bytes for logs before rotation or management actions occur. Default: 5242880.
LOG_SIZE=1048576
- WEBSERVERPORTHTTP
- Sets the in-container HTTP port for the webserver. Default: 8080.
WEBSERVERPORTHTTP=8080
- WEBSERVERPORTHTTPS
- Sets the in-container HTTPS port for the webserver. Default: 8082.
WEBSERVERPORTHTTPS=8443
- DNSIPV4
- Specifies the in-container IPv4 address for DNS resolution. Overrides the deafult container runtime DNS server.
DNSIPV4=8.8.8.8
- LIMIT_RAM
- Sets the RAM limit for the container, in MB, controlling how much memory it may consume. Used by AP Manager to stop the app instances on overconsumption.
LIMIT_RAM=512
- LIMIT_DISK
- Defines the disk space limit in GB for the container to manage storage consumption. Used by AP Manager to stop the app instances on overconsumption.
LIMIT_DISK=10
- MANAGER_DB_HOST
- defines an external database host for the database of the App Platform Manager
If you hand database settings, the container will work without the local database server and doesn't need any storage at all (under development).
MANAGER_DB_HOST=172.16.14.35:5432 (port is optional)
- MANAGER_DB_NAME
- the external database name
MANAGER_DB_NAME=databasename
- MANAGER_DB_USER
- the external database user who has access
MANAGER_DB_USER=databaseuser
- MANAGER_DB_PASSWORD
- the password of the user
MANAGER_DB_PASSWORD=o1kk2hj312k3
- DB_PROVISIONER_URL
- a websocket URL to an external DBProvisioner App which is used to provide databases
DB_PROVISIONER_URL=wss://domain.com/domain.com/dbprovisioner
Volumes and Mounts
This container uses a dedicated internal mount path for the persistent data management across container restarts and updates.
Internal Data Volume
- Mount Path
/mnt/data
- Contents
- Apps: Installed application binaries.
- Databases: PostgreSQL files.
- Logging: Log files for system and application events.
Mounting
To ensure that your data is preserved, map a host directory or Docker named volume to the container's /mnt/data path when running the container. For example:
docker run -d -v /path/on/host:/mnt/data docker.innovaphone.com/cloud/kubernetes/innovaphone-platform-instance:130006
This setup guarantees that your apps, associated data, databases, and logs persist independently of the container lifecycle.
Entrypoint
The container uses a fixed entrypoint:
ENTRYPOINT ["/entrypoint.sh"]
This script prepares the container and starts the AP Manager executable.
Logging and Monitoring
The log of the entrypoint.sh and of the AP manager is avilable as conatiner output. The installed applications store the ir log files under /mnt/data/var/log/apps/
.
Usage Example
sudo docker run -d --restart unless-stopped --name innovaphoneAP -p 9090:8080 -p 9091:8082 -e WEBSERVERPORTHTTP=8080 -e WEBSERVERPORTHTTPS=8082 -v $(pwd)/myapps/:/mnt/data docker.innovaphone.com/cloud/kubernetes/innovaphone-platform-instance:latest
This command runs the container in detached mode with automatic restart. It names the container innovaphoneAP, maps host ports 9090 and 9091 to the container's HTTP and HTTPS ports, sets the webserver port environment variables, mounts a host directory to /mnt/data, and starts the AP Manager. After container start up the AP manager web UI is accessible via http://localhost:9090
or https://localhost:9091
.