diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..93f13619 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +node_modules +npm-debug.log diff --git a/Dockerfile-ffmpeg b/Dockerfile-ffmpeg new file mode 100644 index 00000000..c195a504 --- /dev/null +++ b/Dockerfile-ffmpeg @@ -0,0 +1,2 @@ +FROM jrottenberg/ffmpeg +#CMD "-f v4l2 -framerate 25 -video_size 640x480 -i /dev/video0 -f mpegts -codec:v mpeg1video -s 640x480 -b:v 1000k -bf 0 http://ws-relay:8081/sec" diff --git a/Dockerfile-http b/Dockerfile-http new file mode 100644 index 00000000..47f14000 --- /dev/null +++ b/Dockerfile-http @@ -0,0 +1,6 @@ +FROM node:latest +RUN mkdir -p /usr/src/app +WORKDIR /usr/src/app +COPY . /usr/src/app/ +RUN npm install +CMD node node_modules/http-server/bin/http-server . -p 8090 diff --git a/Dockerfile-ws b/Dockerfile-ws new file mode 100644 index 00000000..4bb3bbf3 --- /dev/null +++ b/Dockerfile-ws @@ -0,0 +1,6 @@ +FROM node:latest +RUN mkdir -p /usr/src/app +WORKDIR /usr/src/app +COPY . /usr/src/app/ +RUN npm install +CMD node websocket-relay.js sec 8081 8082 diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 00000000..254f63c2 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,28 @@ +version: '3' +services: + ffmpeg: + build: + context: . + dockerfile: Dockerfile-ffmpeg + depends_on: + - ws-relay + - http-server + links: + - ws-relay + entrypoint: ffmpeg + command: -f v4l2 -framerate 25 -video_size 640x480 -i /dev/video0 -f mpegts -codec:v mpeg1video -s 640x480 -b:v 1000k -bf 0 http://ws-relay:8081/sec + devices: + - "/dev/video0:/dev/video0" + http-server: + build: + context: . + dockerfile: Dockerfile-http + ports: + - "8090:8090" + ws-relay: + build: + context: . + dockerfile: Dockerfile-ws + ports: + - "8081:8081" + - "8082:8082" diff --git a/index.html b/index.html new file mode 100644 index 00000000..81a737db --- /dev/null +++ b/index.html @@ -0,0 +1,22 @@ + + +
+