summaryrefslogtreecommitdiffstats
path: root/edge/sample/live_stream_app/docker
diff options
context:
space:
mode:
authorWenjing Chu <chu.wenjing@gmail.com>2018-09-04 03:30:48 +0000
committerGerrit Code Review <gerrit@opnfv.org>2018-09-04 03:30:48 +0000
commit420759bf152ce60da2152ec06c44f70f144d1d79 (patch)
tree3d8bcca624c5a70ca5b00b483b0a7b06d210462d /edge/sample/live_stream_app/docker
parent5ee5c6ad39d27a18e2abb7adceecb656c2dde81e (diff)
parent09c584273e02f351a7bcc91840aa0867d9b30484 (diff)
Merge "Add docker and deployment scripts for exemplar video streaming microservice"
Diffstat (limited to 'edge/sample/live_stream_app/docker')
-rw-r--r--edge/sample/live_stream_app/docker/Dockerfile29
-rw-r--r--edge/sample/live_stream_app/docker/build.sh16
-rw-r--r--edge/sample/live_stream_app/docker/src/uv4l_start.sh16
3 files changed, 61 insertions, 0 deletions
diff --git a/edge/sample/live_stream_app/docker/Dockerfile b/edge/sample/live_stream_app/docker/Dockerfile
new file mode 100644
index 0000000..82e9d13
--- /dev/null
+++ b/edge/sample/live_stream_app/docker/Dockerfile
@@ -0,0 +1,29 @@
+FROM resin/raspberrypi3-debian:stretch
+
+WORKDIR /
+ADD src/uv4l_start.sh /
+RUN chmod +x uv4l_start.sh
+
+RUN curl http://www.linux-projects.org/listing/uv4l_repo/lpkey.asc | apt-key add -
+RUN echo "deb http://www.linux-projects.org/listing/uv4l_repo/raspbian/stretch stretch main" | tee -a /etc/apt/sources.list
+
+RUN apt-get update
+RUN apt-get install -y \
+ uv4l \
+ uv4l-server \
+ uv4l-uvc \
+ uv4l-xscreen \
+ uv4l-mjpegstream \
+ uv4l-dummy \
+ uv4l-raspidisp \
+ uv4l-webrtc \
+ uv4l-raspicam \
+ fuse
+
+EXPOSE 9090
+
+ENTRYPOINT [ "/uv4l_start.sh" ]
+CMD ["720", "480", "20"]
+
+
+
diff --git a/edge/sample/live_stream_app/docker/build.sh b/edge/sample/live_stream_app/docker/build.sh
new file mode 100644
index 0000000..98a7379
--- /dev/null
+++ b/edge/sample/live_stream_app/docker/build.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+#
+# Copyright (c) Authors of Clover
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+
+IMAGE_PATH=${IMAGE_PATH:-"localhost:5000"}
+IMAGE_NAME=${IMAGE_NAME:-"clover-live-stream"}
+
+docker build -t $IMAGE_NAME .
+docker tag $IMAGE_NAME $IMAGE_PATH/$IMAGE_NAME
+docker push $IMAGE_PATH/$IMAGE_NAME
diff --git a/edge/sample/live_stream_app/docker/src/uv4l_start.sh b/edge/sample/live_stream_app/docker/src/uv4l_start.sh
new file mode 100644
index 0000000..69dbdec
--- /dev/null
+++ b/edge/sample/live_stream_app/docker/src/uv4l_start.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+trap cleanup 2 3 15
+
+cleanup()
+{
+ pkill uv4l
+ exit 1
+}
+
+uv4l -nopreview --auto-video_nr --driver raspicam --encoding mjpeg --width $1 --height $2 --framerate $3 --server-option '--port=9090' --server-option '--max-queued-connections=30' --server-option '--max-streams=25' --server-option '--max-threads=29'
+
+while true
+do
+ sleep 15
+done