The overwhelming majority of IT specialists in various fields strive to perform as few actions as possible by hand. I'm not afraid of big words - what can be automated must be automated!
: , . , . , . , - .
:
. . , , . - , . . , .
. , , , . , . , - . Python !
. . - . - , . , , . Docker- , ( ) . , , , , .
. , . : .
:
:
. , . - , . ;
. - . ;
. - ;
( , , ). - .
..
, . , , . , .
, ?
. , Docker . WebRTC - , . Docker .
- " Docker ?
Web Call Server.
!
Docker Hub Flashphoner Web Call Server 5.2.
WCS :
Docker Hub
docker pull flashponer/webcallserver
docker ,
docker run \ -e PASSWORD=password \ -e LICENSE=license_number \ --name wcs-docker-test --rm -d flashphoner/webcallserver:latest
:
PASSWORD - SSH. , SSH ;
LICENSE - WCS. , -.
, .
Ubuntu Desktop 20.04 LTS Docker:
sudo apt install docker.io
Docker "testnet":
sudo docker network create \ --subnet 192.168.1.0/24 \ --gateway=192.168.1.1 \ --driver=bridge \ --opt com.docker.network.bridge.name=br-testnet testnet
C WCS Docker Hub
sudo docker pull flashphoner/webcallserver
WCS
sudo 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 flashphoner/webcallserver:latest
:
PASSWORD - SSH. , SSH ;
LICENSE - WCS. , -;
LOCAL_IP - IP , ip_local flashphoner.properties;
--net , . testnet.
:
ping 192.168.1.10
Web WCS https://192.168.1.10:8444 WebRTC "Two Way Streaming". .
, Docker, WCS . .
Docker , .. " " , " " .
, Docker , . . . , ?
. . . , Dockere.
docker run \ -e PASSWORD=password \ -e LICENSE=license_number \ -e LOCAL_IP=192.168.1.10 \ -e EXTERNAL_IP=192.168.23.6 \ -d -p8444:8444 -p8443:8443 -p1935:1935 -p30000-33000:30000-33000 \ --net testnet --ip 192.168.1.10 \ --name wcs-docker-test --rm flashphoner/webcallserver:latest
:
PASSWORD, LICENSE LOCAL_IP — ;
EXTERNAL_IP — IP . ip flashphoner.properties;
-p — . "testnet", .
https://192.168.23.6:8444 (IP Docker) "Two Way Streaming"
Web WCS WebRTC .
, !
!
10 . WCS. - , Docker .
, , .
, — - .
( --net host)
docker run \ -e PASSWORD=password \ -e LICENSE=license_number \ -e LOCAL_IP=192.168.23.6 \ -e EXTERNAL_IP=192.168.23.6 \ --net host \ --name wcs-docker-test --rm -d flashphoner/webcallserver:latest
! . - web WebRTC .
. .
. , .
1.12 Docker : Macvlan IPvlan. IP LAN.
Macvlan — (-) , MAC-.
Linux v3.9–3.19 4.0+.
IPvlan — , MAC-.
Linux v4.2 + ( , ).
IPvlan. , , VMWare ESXi. , VMWare ESXi MAC- , Macvlan .
. enp0s3, IP DHCP .
.. DHCP , Docker , , Docker , .
Docker. :
DHCP , .
Docker .
, DHCP . , , , .
Docker, , .
DHCP , 192.168.23. 99. Docker 32 192.168.23.100.
Docker "new-testnet":
docker network create -d ipvlan -o parent=enp0s3 \ --subnet 192.168.23.0/24 \ --gateway 192.168.23.1 \ --ip-range 192.168.23.100/27 \ new-testnet
:
ipvlan — ;
parent=enp0s3 — (enp0s3), ;
--subnet — ;
--gateway — ;
--ip-range — , Docker .
WCS
docker run \ -e PASSWORD=password \ -e LICENSE=license_number \ -e LOCAL_IP=192.168.23.101 \ -e EXTERNAL_IP=192.168.23.101 \ --net new-testnet --ip 192.168.23.101 \ --name wcs-docker-test --rm -d flashphoner/webcallserver:latest
web / WebRTC "Two-way Streaming":
. Ipvlan Macvlan Docker . , , , .
— WCS — . ssh .
IPvlan Docker . , , .
Dockere . , . , - .