bring frontend on root and move fallback videos to their own location
This commit is contained in:
parent
2d0558e6b4
commit
883fa6a182
5 changed files with 8 additions and 49 deletions
|
@ -53,8 +53,8 @@ services:
|
||||||
rtmp:
|
rtmp:
|
||||||
build: ./rtmp
|
build: ./rtmp
|
||||||
hostname: rtmp
|
hostname: rtmp
|
||||||
ports:
|
#ports:
|
||||||
- "18080:18080"
|
# - "18080:18080"
|
||||||
volumes:
|
volumes:
|
||||||
- "./data/rtmp/hls:/tmp/hls"
|
- "./data/rtmp/hls:/tmp/hls"
|
||||||
depends_on:
|
depends_on:
|
||||||
|
|
|
@ -9,3 +9,4 @@ ADD https://github.com/bilibili/flv.js/releases/download/v1.5.0/flv.min.js /code
|
||||||
RUN chmod 644 /code/static/flv.min.js
|
RUN chmod 644 /code/static/flv.min.js
|
||||||
USER nobody
|
USER nobody
|
||||||
WORKDIR /code
|
WORKDIR /code
|
||||||
|
EXPOSE 5001
|
||||||
|
|
|
@ -61,7 +61,6 @@ COPY nginx.conf /etc/nginx/nginx.conf
|
||||||
COPY mime.types /etc/nginx/mime.types
|
COPY mime.types /etc/nginx/mime.types
|
||||||
|
|
||||||
# Copy fallback data
|
# Copy fallback data
|
||||||
COPY index.html /www/
|
|
||||||
COPY network.m3u8 /www/
|
COPY network.m3u8 /www/
|
||||||
COPY network0.ts /www/
|
COPY network0.ts /www/
|
||||||
COPY network1.ts /www/
|
COPY network1.ts /www/
|
||||||
|
|
|
@ -1,41 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<title>Live Stream</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h2>Live Stream</h2>
|
|
||||||
<video id="video" width="800" controls></video>
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>
|
|
||||||
<!-- Or if you want a more recent alpha version -->
|
|
||||||
<!-- <script src="https://cdn.jsdelivr.net/npm/hls.js@alpha"></script> -->
|
|
||||||
<script>
|
|
||||||
var video = document.getElementById("video");
|
|
||||||
var videoSrc = "/hls/test.m3u8";
|
|
||||||
if (Hls.isSupported()) {
|
|
||||||
var hls = new Hls();
|
|
||||||
hls.loadSource(videoSrc);
|
|
||||||
hls.attachMedia(video);
|
|
||||||
}
|
|
||||||
// hls.js is not supported on platforms that do not have Media Source
|
|
||||||
// Extensions (MSE) enabled.
|
|
||||||
//
|
|
||||||
// When the browser has built-in HLS support (check using `canPlayType`),
|
|
||||||
// we can provide an HLS manifest (i.e. .m3u8 URL) directly to the video
|
|
||||||
// element through the `src` property. This is using the built-in support
|
|
||||||
// of the plain video element, without using hls.js.
|
|
||||||
//
|
|
||||||
// Note: it would be more normal to wait on the 'canplay' event below however
|
|
||||||
// on Safari (where you are most likely to find built-in HLS support) the
|
|
||||||
// video.src URL must be on the user-driven white-list before a 'canplay'
|
|
||||||
// event will be emitted; the last video event that can be reliably
|
|
||||||
// listened-for when the URL is not on the white-list is 'loadedmetadata'.
|
|
||||||
else if (video.canPlayType("application/vnd.apple.mpegurl")) {
|
|
||||||
video.src = videoSrc;
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -49,16 +49,16 @@ http {
|
||||||
listen 8080;
|
listen 8080;
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
|
proxy_pass http://frontend:5001;
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /fallback {
|
||||||
root /www;
|
root /www;
|
||||||
add_header Cache-Control no-cache;
|
add_header Cache-Control no-cache;
|
||||||
add_header Access-Control-Allow-Origin *;
|
add_header Access-Control-Allow-Origin *;
|
||||||
}
|
}
|
||||||
|
|
||||||
location /admin {
|
|
||||||
proxy_pass http://frontend:5001;
|
|
||||||
include /etc/nginx/mime.types;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /hls {
|
location /hls {
|
||||||
types {
|
types {
|
||||||
application/vnd.apple.mpegurl m3u8;
|
application/vnd.apple.mpegurl m3u8;
|
||||||
|
|
Loading…
Reference in a new issue