-
Notifications
You must be signed in to change notification settings - Fork 28
Description
🚀 Feature Request
Relevant Package [REQUIRED]
Device USB Camera and RTSP Server
Description [REQUIRED]
The Dockerfile uses aler9/rtsp-simple-server as a base:
Line 36 in 0d2f133
| FROM aler9/rtsp-simple-server:v0.18.4 AS rtsp |
And runs the process before starting the camera service:
device-usb-camera/docker-entrypoint.sh
Lines 3 to 7 in 0d2f133
| echo "Run rtsp-simple-server..." | |
| /rtsp-simple-server & | |
| echo "Run device-usb-camera..." | |
| /device-usb-camera $@ |
At the same time, the device service allows configuration of the RTSP server:
device-usb-camera/cmd/res/configuration.toml
Lines 108 to 110 in 0d2f133
| [Driver] | |
| RtspServerHostName = "localhost" | |
| RtspTcpPort = "8554" |
I'm not convinced that adding an RTSP server inside the same docker container is a good idea. Note that rtsp-simple-server is already dockerized and easily deployable as standalone: https://hub.docker.com/r/aler9/rtsp-simple-server
There are a few issues:
- The USB Camera service config allows using an external server, but does not allow disabling the internal one. The 9-10MB for the executable gets pulled in regardless.
- It is unclear how someone can configure and secure the internal RTSP server. Does the upstream documentation apply to the Device USB service container too? Our README doesn't make that clear.
- Embedding the rtsp-simple-server adds maintenance burden to EdgeX. I don't think this dependency was approved by the TSC. It's been a few weeks and we are already a few versions behind.
Describe the solution you'd like
The control of the RTSP server process can be made possible for example by reading an env var in docker-entrypoint.sh to decide if the process should run.
If the RTSP server wasn't embedded, I could easily deploy the project's container together with the Device Usb Camera service container.
Describe alternatives you've considered
Metadata
Metadata
Assignees
Labels
Type
Projects
Status