mirror of
https://github.com/langhuihui/monibuca.git
synced 2025-12-24 13:48:04 +08:00
Compare commits
11 Commits
v4.7.6-bet
...
v4.7.6-bet
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e11c582b51 | ||
|
|
28531ec17f | ||
|
|
2fce421b2e | ||
|
|
c8553f2073 | ||
|
|
122de52fea | ||
|
|
db4a51eaa5 | ||
|
|
7d6f3dbab8 | ||
|
|
21e0843af3 | ||
|
|
91d0e20748 | ||
|
|
0f94c380eb | ||
|
|
601ea27358 |
37
Dockerfile
37
Dockerfile
@@ -1,15 +1,34 @@
|
||||
#源镜像
|
||||
# Compile Stage
|
||||
FROM golang:1.22.2-alpine3.19 AS builder
|
||||
MAINTAINER monibuca <awesome@monibuca.com>
|
||||
|
||||
LABEL stage=gobuilder
|
||||
|
||||
# Env
|
||||
ENV CGO_ENABLE 0
|
||||
ENV GOOS linux
|
||||
ENV GOARCH amd64
|
||||
ENV GOPROXY https://goproxy.cn,direct
|
||||
ENV HOME /monibuca
|
||||
|
||||
COPY . /monibuca
|
||||
WORKDIR /monibuca
|
||||
|
||||
# compile
|
||||
RUN go mod download
|
||||
RUN go build -ldflags="-s -w" -o /monibuca/build/monibuca ./main.go
|
||||
|
||||
RUN cp -r /monibuca/config.yaml /monibuca/build
|
||||
RUN cp -r /monibuca/favicon.ico /monibuca/build
|
||||
|
||||
# Running Stage
|
||||
FROM alpine:latest
|
||||
|
||||
WORKDIR /opt
|
||||
WORKDIR /monibuca
|
||||
COPY --from=builder /monibuca/build /monibuca/
|
||||
|
||||
ADD monibuca_linux /opt
|
||||
ADD favicon.ico /opt
|
||||
ADD config.yaml /opt
|
||||
# RUN apk --no-cache add ffmpeg
|
||||
#暴露端口
|
||||
# Export necessary ports
|
||||
EXPOSE 8080 8443 1935 554 58200-59200 5060 8000-9000
|
||||
EXPOSE 5060/udp 58200-59200/udp 8000-9000/udp
|
||||
|
||||
#最终运行docker的命令
|
||||
ENTRYPOINT ["./monibuca_linux"]
|
||||
CMD [ "./monibuca" ]
|
||||
|
||||
10
docker-compose.yaml
Normal file
10
docker-compose.yaml
Normal file
@@ -0,0 +1,10 @@
|
||||
services:
|
||||
monibuca:
|
||||
build:
|
||||
dockerfile: ./Dockerfile
|
||||
image: monibuca:v4
|
||||
restart: unless-stopped
|
||||
#please use host mode as expose large number of ports will cause docker extremely slow
|
||||
network_mode: host
|
||||
volumes:
|
||||
- ${PWD}/config.yaml:/monibuca/config.yaml
|
||||
9
go.mod
9
go.mod
@@ -6,10 +6,10 @@ toolchain go1.21.8
|
||||
|
||||
require (
|
||||
go.uber.org/zap v1.27.0
|
||||
m7s.live/engine/v4 v4.15.2-0.20240402112224-9f9b2392735a
|
||||
m7s.live/engine/v4 v4.15.2-0.20240618012344-72922ce539a7
|
||||
m7s.live/plugin/debug/v4 v4.0.3
|
||||
m7s.live/plugin/fmp4/v4 v4.0.6
|
||||
m7s.live/plugin/gb28181/v4 v4.4.4
|
||||
m7s.live/plugin/gb28181/v4 v4.4.5-0.20240521112210-a207352fe6e4
|
||||
m7s.live/plugin/hdl/v4 v4.1.11-0.20240313041408-780dcc14aa1b
|
||||
m7s.live/plugin/hls/v4 v4.3.9-0.20240313063851-81841202e6ab
|
||||
m7s.live/plugin/hook/v4 v4.0.3
|
||||
@@ -17,9 +17,9 @@ require (
|
||||
m7s.live/plugin/logrotate/v4 v4.0.6
|
||||
m7s.live/plugin/monitor/v4 v4.0.5
|
||||
m7s.live/plugin/preview/v4 v4.1.5-0.20240313053841-3228fb004004
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240326145629-cfa781bce27d
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240520050010-6a749d194324
|
||||
m7s.live/plugin/room/v4 v4.1.1-0.20240402112256-da53fe368413
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240307124858-efe5c2b0ee20
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240521012445-8df3cf16e26b
|
||||
m7s.live/plugin/rtsp/v4 v4.3.5-0.20240228010654-14ef344d0848
|
||||
m7s.live/plugin/snap/v4 v4.0.8
|
||||
m7s.live/plugin/webrtc/v4 v4.2.6-0.20240228010952-272f6e1bc8bd
|
||||
@@ -32,6 +32,7 @@ require (
|
||||
github.com/bluenviron/mediacommon v1.9.2 // indirect
|
||||
github.com/cnotch/ipchub v1.1.0 // indirect
|
||||
github.com/davecgh/go-spew v1.1.1 // indirect
|
||||
github.com/deepch/vdk v0.0.27 // indirect
|
||||
github.com/denisbrodbeck/machineid v1.0.1 // indirect
|
||||
github.com/discoviking/fsm v0.0.0-20150126104936-f4a273feecca // indirect
|
||||
github.com/ghettovoice/gosip v0.0.0-20231227123312-6b80e2d3e6f7 // indirect
|
||||
|
||||
36
go.sum
36
go.sum
@@ -16,6 +16,8 @@ github.com/cnotch/xlog v0.0.0-20201208005456-cfda439cd3a0/go.mod h1:RW9oHsR79ffl
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/deepch/vdk v0.0.27 h1:j/SHaTiZhA47wRpaue8NRp7P9xwOOO/lunxrDJBwcao=
|
||||
github.com/deepch/vdk v0.0.27/go.mod h1:JlgGyR2ld6+xOIHa7XAxJh+stSDBAkdNvIPkUIdIywk=
|
||||
github.com/denisbrodbeck/machineid v1.0.1 h1:geKr9qtkB876mXguW2X6TU4ZynleN6ezuMSRhl4D7AQ=
|
||||
github.com/denisbrodbeck/machineid v1.0.1/go.mod h1:dJUwb7PTidGDeYyUBmXZ2GphQBbjJCrnectwCyxcUSI=
|
||||
github.com/discoviking/fsm v0.0.0-20150126104936-f4a273feecca h1:cTTdXpkQ1aVbOOmHwdwtYuwUZcQtcMrleD1UXLWhAq8=
|
||||
@@ -397,12 +399,36 @@ m7s.live/engine/v4 v4.15.2-0.20240402075636-a44ad2830b3a h1:P6v5yMV6P8kf4LcgZ1CM
|
||||
m7s.live/engine/v4 v4.15.2-0.20240402075636-a44ad2830b3a/go.mod h1:FRtMPBGzNE6kCLgY0wuS3H7d1btKocRiVe9fAkDtP1g=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240402112224-9f9b2392735a h1:5/nM2MKhx28ADM8Ev62sGI7jKbG7GJpNcoBqAhERSPg=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240402112224-9f9b2392735a/go.mod h1:FRtMPBGzNE6kCLgY0wuS3H7d1btKocRiVe9fAkDtP1g=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240507090929-4a481a016544 h1:yx0ucrNDpttU3Jy3b8IpCCseFo7ua3664SIVL1L1UXA=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240507090929-4a481a016544/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240604004959-0c7bd2717620 h1:5llhSE6O+1T2Wdz8lfLDn0jUTdzQZwz/F4xSNIbYCok=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240604004959-0c7bd2717620/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240606005101-a5adc11d55cd h1:Gh9aUhyhVItBFZ4HMJraVHlwodmmhVkfNuHm+kkIfMI=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240606005101-a5adc11d55cd/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240607005755-9b574f3ddcdb h1:C3uPG+rZ0MQAWJUZ5Klo9m+AAeIz+ELjQOIkWvRr9kQ=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240607005755-9b574f3ddcdb/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240607085410-53b55bc19e8e h1:w+TCbdypxVgSca3B/MHFpeyDJz9AAi0Wf1QzbCa+Pco=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240607085410-53b55bc19e8e/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240612010920-cf636d3b6165 h1:6Ak4t2bb0eIvpqiHg6Egt8p2FHihQ/p8m5IsKTVK2zo=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240612010920-cf636d3b6165/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240613010124-6360213cd761 h1:FElj0OuGk7TSSJEdRD9YhhWDPdpI1yjLrsxrIZRHzTo=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240613010124-6360213cd761/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240617004224-0dfd3e74509f h1:mWPYV7D8/gNQ9HAhpf4qJIKuO0ywQ1h9wZqUlo5kuLA=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240617004224-0dfd3e74509f/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240618004044-98f334ec1092 h1:GZQdv0GQgw+T80xeXQq5gIBhJI3bpy/k1sOAHZauN8Q=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240618004044-98f334ec1092/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240618012344-72922ce539a7 h1:hGXYD1WpQhkKsvpAgFyNIuCzh/vGdZ3YTzpKr0nLnA8=
|
||||
m7s.live/engine/v4 v4.15.2-0.20240618012344-72922ce539a7/go.mod h1:uKxjmsjU1WARUNowEkP83BSrJMUjGwkJrX5nPi6DGmE=
|
||||
m7s.live/plugin/debug/v4 v4.0.3 h1:lwqKkySXhu47kon/YeF+h5UXXac6c9seb2L6Y8X5ktM=
|
||||
m7s.live/plugin/debug/v4 v4.0.3/go.mod h1:muzikl1KrHfbT/+2aHzKg9qDGfpArViQAtpcfFrST88=
|
||||
m7s.live/plugin/fmp4/v4 v4.0.6 h1:X4FXfYuI1OCgaJzyJUNySDRPNPHzLJ5StgX/IxljQIA=
|
||||
m7s.live/plugin/fmp4/v4 v4.0.6/go.mod h1:0P3IbefEJ6Cs9AeMME0FbEiOK7XNn1fJ5xHohtefIQA=
|
||||
m7s.live/plugin/gb28181/v4 v4.4.4 h1:2ZeHCYk1qyYoF9YwEJPFkqZzH/FmkadSxT2GC+tkKFk=
|
||||
m7s.live/plugin/gb28181/v4 v4.4.4/go.mod h1:mK5embLQwDULFJjA7jBls1Cwvow98lTWS6n/uZ7Ampk=
|
||||
m7s.live/plugin/gb28181/v4 v4.4.5-0.20240403021512-d35b18f1a977 h1:VE6e41Q+o5/Hj0gUtKyuNtyJQgSGvZ+/8F6PEzJfNvs=
|
||||
m7s.live/plugin/gb28181/v4 v4.4.5-0.20240403021512-d35b18f1a977/go.mod h1:mK5embLQwDULFJjA7jBls1Cwvow98lTWS6n/uZ7Ampk=
|
||||
m7s.live/plugin/gb28181/v4 v4.4.5-0.20240521112210-a207352fe6e4 h1:IdlwT2QGUT7k2SkcV0LdPBum/STri2IBWdB0HfT22JU=
|
||||
m7s.live/plugin/gb28181/v4 v4.4.5-0.20240521112210-a207352fe6e4/go.mod h1:mK5embLQwDULFJjA7jBls1Cwvow98lTWS6n/uZ7Ampk=
|
||||
m7s.live/plugin/hdl/v4 v4.1.11-0.20240313041408-780dcc14aa1b h1:kVDaiqUVPo2pMBcTnrAFk5Q/kKJACmOgSNE71lcF0B0=
|
||||
m7s.live/plugin/hdl/v4 v4.1.11-0.20240313041408-780dcc14aa1b/go.mod h1:SzMML8acGj8QD5AwihVTnTuCAdKCOpdf+q/CYl/3/Hc=
|
||||
m7s.live/plugin/hls/v4 v4.3.9-0.20240313063851-81841202e6ab h1:bj2EUd8Ur1cVIssj3ZdrQeE4Fueh8qtthptJQkqM9ZY=
|
||||
@@ -423,6 +449,10 @@ m7s.live/plugin/record/v4 v4.4.7-0.20240306125017-a6567ad9ea5e h1:JqV8SZMk0RBaEs
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240306125017-a6567ad9ea5e/go.mod h1:4fSAA/AYCNsFA0Ii0UVuBqsbhoTXC1s3lC/en5qabjg=
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240326145629-cfa781bce27d h1:F8nfxjDiJXmwRonmhKr0hffOgA2GhJoluJ9ftiEUfOU=
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240326145629-cfa781bce27d/go.mod h1:4fSAA/AYCNsFA0Ii0UVuBqsbhoTXC1s3lC/en5qabjg=
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240517091257-9476c9a36ce1 h1:MJSHaphhuDbg4sk7nwGlyoQdAKcIQurpQJ5Ot36YVeI=
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240517091257-9476c9a36ce1/go.mod h1:4fSAA/AYCNsFA0Ii0UVuBqsbhoTXC1s3lC/en5qabjg=
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240520050010-6a749d194324 h1:SjFJBrNX1Ecyn9psYYLftyH1E/BfSnIyWYEDzPKalqA=
|
||||
m7s.live/plugin/record/v4 v4.4.7-0.20240520050010-6a749d194324/go.mod h1:4fSAA/AYCNsFA0Ii0UVuBqsbhoTXC1s3lC/en5qabjg=
|
||||
m7s.live/plugin/room/v4 v4.1.0 h1:7avMuCnYHX1z9jmoPaGl4tdw5DKFDWiAgFK0+RWVqzA=
|
||||
m7s.live/plugin/room/v4 v4.1.0/go.mod h1:4GBdAHUYtdp+nkHcGIClI8xkIUo/VTrD9Y0YMlTE7HU=
|
||||
m7s.live/plugin/room/v4 v4.1.1-0.20240402092359-8f5f31f2c93a h1:LcWqBbHMg+tffvjddVRf9MEdv4kIDLNKMXo7JHwqxyw=
|
||||
@@ -431,6 +461,12 @@ m7s.live/plugin/room/v4 v4.1.1-0.20240402112256-da53fe368413 h1:FT7i+1fVF4qO71Iv
|
||||
m7s.live/plugin/room/v4 v4.1.1-0.20240402112256-da53fe368413/go.mod h1:4GBdAHUYtdp+nkHcGIClI8xkIUo/VTrD9Y0YMlTE7HU=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240307124858-efe5c2b0ee20 h1:ugC5795EjCm0sNFUYp7NzmfZGy46Rz1/PY240DFSpOQ=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240307124858-efe5c2b0ee20/go.mod h1:6yihulC3KwZaT28qIHHgD68/aP7S6LpA2x3L8mMq6+w=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240520045725-f0ac19813b34 h1:xpVvWqBHwmhatw0TkIa5CB/voPnRvCBEV7NQz/oRxts=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240520045725-f0ac19813b34/go.mod h1:6yihulC3KwZaT28qIHHgD68/aP7S6LpA2x3L8mMq6+w=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240520092204-743bd75a7789 h1:tmP3nrUR2NKm6GuMufKlnGrTrBoeo1YZIJBjExhZQ7I=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240520092204-743bd75a7789/go.mod h1:6yihulC3KwZaT28qIHHgD68/aP7S6LpA2x3L8mMq6+w=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240521012445-8df3cf16e26b h1:qYczwlbEMS06RXTAZ63J6sjhv2b04CnEEJFi0SpG6tk=
|
||||
m7s.live/plugin/rtmp/v4 v4.3.1-0.20240521012445-8df3cf16e26b/go.mod h1:6yihulC3KwZaT28qIHHgD68/aP7S6LpA2x3L8mMq6+w=
|
||||
m7s.live/plugin/rtsp/v4 v4.3.5-0.20240228010654-14ef344d0848 h1:vjI/Pc9kOcvXClq6i3i0U93GdZ73OLWCJ5PsJq9q2f0=
|
||||
m7s.live/plugin/rtsp/v4 v4.3.5-0.20240228010654-14ef344d0848/go.mod h1:eU4T50gY67EqNRQqUNeEgCi4W9Pa6tGxltHuOJTFwio=
|
||||
m7s.live/plugin/snap/v4 v4.0.8 h1:65t4Wd9wiBdD1/ucCSVma5/LhEg/6XbC4yqf95uvCxI=
|
||||
|
||||
17
main.go
17
main.go
@@ -2,8 +2,8 @@ package main
|
||||
|
||||
//go:generate go run gen.go $debug
|
||||
|
||||
/*
|
||||
███ ███ ██████ ███ ██ 👑 ██████ ██ ██ ██████ █████
|
||||
/*
|
||||
███ ███ ██████ ███ ██ 👑 ██████ ██ ██ ██████ █████
|
||||
████ ████ ██ ██ ████ ██ ██ ██ ██ ██ ██ ██ ██ ██
|
||||
██ ████ ██ ██ ██ ██ ██ ██ ██ ██████ ██ ██ ██ ███████
|
||||
██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██
|
||||
@@ -36,17 +36,20 @@ import (
|
||||
"context"
|
||||
"flag"
|
||||
"fmt"
|
||||
"os"
|
||||
|
||||
"m7s.live/engine/v4"
|
||||
"m7s.live/engine/v4/util"
|
||||
|
||||
_ "m7s.live/plugin/logrotate/v4"
|
||||
_ "m7s.live/plugin/debug/v4"
|
||||
_ "m7s.live/plugin/fmp4/v4"
|
||||
_ "m7s.live/plugin/gb28181/v4"
|
||||
_ "m7s.live/plugin/hdl/v4"
|
||||
_ "m7s.live/plugin/hls/v4"
|
||||
_ "m7s.live/plugin/hook/v4"
|
||||
_ "m7s.live/plugin/jessica/v4"
|
||||
_ "m7s.live/plugin/logrotate/v4"
|
||||
_ "m7s.live/plugin/monitor/v4"
|
||||
_ "m7s.live/plugin/preview/v4"
|
||||
_ "m7s.live/plugin/record/v4"
|
||||
_ "m7s.live/plugin/room/v4"
|
||||
@@ -55,8 +58,6 @@ import (
|
||||
_ "m7s.live/plugin/snap/v4"
|
||||
_ "m7s.live/plugin/webrtc/v4"
|
||||
_ "m7s.live/plugin/webtransport/v4"
|
||||
_ "m7s.live/plugin/fmp4/v4"
|
||||
_ "m7s.live/plugin/monitor/v4"
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -65,7 +66,11 @@ var (
|
||||
|
||||
func main() {
|
||||
fmt.Println("start github.com/langhuihui/monibuca version:", version)
|
||||
conf := flag.String("c", "config.yaml", "config file")
|
||||
confPathFromEnv := os.Getenv("M7S_CONFIG_FILE")
|
||||
if confPathFromEnv == "" {
|
||||
confPathFromEnv = "config.yaml" // 如果环境变量未设置,默认使用此路径
|
||||
}
|
||||
conf := flag.String("c", confPathFromEnv, "config file")
|
||||
flag.Parse()
|
||||
ctx, cancel := context.WithCancel(context.WithValue(context.Background(), "version", version))
|
||||
go util.WaitTerm(cancel)
|
||||
|
||||
Reference in New Issue
Block a user