...
Code Block | ||||
---|---|---|---|---|
| ||||
sudo docker network create \ --subnet 192.168.1.1/24 \ --gateway=192.166168.1.1 \ --driver=bridge \ --opt com.docker.network.bridge.name=br-testnet testnet |
...
Code Block | ||||
---|---|---|---|---|
| ||||
docker run \ -e PASSWORD=password \ -e LICENSE=license_number \ -e LOCAL_IP=192.168.1.10 \ --net testnet --ip 192.168.1.10 \ --name wcs-docker-test --rm -d flashphonerofficialflashphoner/webcallserver:latest |
4. Проверьте доступность контейнера по SSH
...
Code Block | ||||
---|---|---|---|---|
| ||||
docker run \ -e PASSWORD=password \ -e LICENSE=license_number \ --net host \ --name wcs-docker-test --rm -it flashphonerofficialflashphoner/webcallserver:latest |
Скрипт запуска контейнера определит IP адреса всех интерфейсов и предложит ввести тот, который будет прослушивать WCS сервер
...
/conf
- каталог дополнительных файлов конфигурации, путь отсчитывается от корня контейнера. Этот каталог может быть смонтирован только для чтения/usr/local/FlashphonerWebCallServer/hls
- каталог для сегментов HLS. Этот каталог должен быть смонтирован для записи/usr/local/FlashphonerWebCallServer/logs
- каталог для логирования. Этот каталог должен быть смонтирован для записи/usr/local/FlashphonerWebCallServer/media
- каталог с файлами для воспроизведения VOD. Этот каталог может быть смонтирован только для чтения. Этот каталог может быть быть общим с другими экземплярами WCS/usr/local/FlashphonerWebCallServer/records
- каталог для файлов записей потоков. Этот каталог должен быть смонтирован для записи. Этот каталог может быть быть общим с другими экземплярами WCS
...
Code Block | ||||
---|---|---|---|---|
| ||||
docker run -e LICENSE=license_number -e CDN_ROLE=origin \
-v /opt/wcs/conf:/conf \
-v /opt/wcs/logs:/usr/local/FlashphonerWebCallServer/logs \
-v /opt/wcs/hls:/usr/local/FlashphonerWebCallServer/hls \
-v /opt/wcs/media:/usr/local/FlashphonerWebCallServer/media \
-v /opt/wcs/records:/usr/local/FlashphonerWebCallServer/records \
--name webcallserver-instance -d webcallserver:latest |
Warning | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Не допускается монтирование всего каталога /usr/local/FlashphonerWebCallServer/conf как тома, или отдельных файлов из этого каталога! Например, так делать нельзя:
и так тоже:
|
Дополнительная настройка
В каталог, смонтированный как том /conf
, могут быть помещены следующие файлы настроек
...
Состав портов при необходимости может быть изменен при помощи параметров запуска docker run --expose
. В этом случае значения портов должны быть указаны в файлах настроек flashphoner.properties
и wcs-core.properties
, см выше
Известные проблемы
1. При запуске контейнера нельзя изменить ограничение на количество открытых файлов изнутри контейнера.
Симптомы: при запуске контейнера в интерактивном режиме выводится сообщение
Code Block | ||
---|---|---|
| ||
ulimit: open files: cannot modify limit: Operation not permitted |
Решение: установить ограничение на количество открытых файлов в параметрах запуска контейнера
Code Block | ||||
---|---|---|---|---|
| ||||
docker run --ulimit nofile=100000:100000 \
-e LICENSE=license_number -e PASSWORD=secret \
--name webcallserver-instance --rm webcallserver:latest |
2. Не рекомендуется использовать Docker на Windows из-за проблем с пробросом портов
Симптомы: при развертывании образа в Docker под Windows контейнер запущен, но недоступен по SSH, по HTTP/HTTPS, не устанавливается WebRTC соединение
Решение: использовать Docker на Linux, либо запускать WCS в WSL 2