From 8288923a3edf85c8e5659bd0b882ac63cf2848be Mon Sep 17 00:00:00 2001 From: xiyao Date: Wed, 8 Nov 2023 16:15:16 +0800 Subject: [PATCH 1/3] feat: add docker support --- .github/workflows/build-image.yml | 23 +++++++++++++++++++++++ Dockerfile | 14 ++++++++++++++ README.md | 10 ++++++++++ 3 files changed, 47 insertions(+) create mode 100644 .github/workflows/build-image.yml create mode 100644 Dockerfile diff --git a/.github/workflows/build-image.yml b/.github/workflows/build-image.yml new file mode 100644 index 0000000..3e0ea0f --- /dev/null +++ b/.github/workflows/build-image.yml @@ -0,0 +1,23 @@ +name: build-image + +on: + workflow_dispatch: + push: + pull_request: + +jobs: + build-and-push-image: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_PASSWD }} + + - name: Build the docker image and push + run: | + docker buildx create --use + docker buildx build --platform linux/amd64,linux/arm64 --tag ${{ secrets.DOCKERHUB_USERNAME }}/real-url-proxy-server:latest --file Dockerfile --push . diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..3b57816 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,14 @@ +FROM --platform=$BUILDPLATFORM node:alpine as base + +RUN apk add --no-cache python3 python3-dev py3-pip +RUN pip3 install requests PyExecJS + +FROM base as build + +ENV PORT 8888 +ENV REFRESH 7200 + +COPY . /real-url-proxy-server +WORKDIR /real-url-proxy-server + +ENTRYPOINT python3 real-url-proxy-server.py --port $PORT --refresh $REFRESH diff --git a/README.md b/README.md index 05aae75..9374841 100644 --- a/README.md +++ b/README.md @@ -28,5 +28,15 @@ LOG_FILE: 日志文件路径,为空则仅输出至控制台。
## 其它 获取到的实际地址会以301跳转或EXTM3U形式返回,播放端得到播放地址后,后续正常播放过程中不会再次访问代理服务器,因此服务器负载和流量均很低。本人在家中将其部署于刷了Padavan的小米路由器上,并通过OTT盒子进行观看。(斗鱼,bilibili是301跳转,虎牙会一直访问代理服务器返回#EXTM3U) +## Docker 运行 +```bash +# 从本地构建镜像 +docker build --tag real-url-proxy-server . +docker run -p 8888:8888 -e PORT=8888 -e REFRESH=7200 real-url-proxy-server + +# 使用 Docker Hub 镜像 +docker run -p 8888:8888 -e PORT=8888 -e REFRESH=7200 futuretech6/real-url-proxy-server # 目前支持amd64, amr64 +``` + ## 感谢 获取直播源地址使用的douyu.py、huya.py及bilibili.py代码来自于Real-Url项目,在此表示由衷的感谢! From c34e48cf02b7c5c9ea69a9d17699b00de3b7a061 Mon Sep 17 00:00:00 2001 From: xiyao Date: Wed, 8 Nov 2023 16:33:07 +0800 Subject: [PATCH 2/3] feat: add docker-compose config --- README.md | 14 ++++++++++++-- docker-compose.yaml | 14 ++++++++++++++ 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 docker-compose.yaml diff --git a/README.md b/README.md index 9374841..b0963e3 100644 --- a/README.md +++ b/README.md @@ -32,10 +32,20 @@ LOG_FILE: 日志文件路径,为空则仅输出至控制台。
```bash # 从本地构建镜像 docker build --tag real-url-proxy-server . -docker run -p 8888:8888 -e PORT=8888 -e REFRESH=7200 real-url-proxy-server +docker run -d --name real-url-proxy-server --restart unless-stopped \ + -p 8888:8888 \ + -e PORT=8888 \ + -e REFRESH=7200 \ + real-url-proxy-server # 使用 Docker Hub 镜像 -docker run -p 8888:8888 -e PORT=8888 -e REFRESH=7200 futuretech6/real-url-proxy-server # 目前支持amd64, amr64 +docker run -d --name real-url-proxy-server --restart unless-stopped \ + -p 8888:8888 \ + -e PORT=8888 \ + -e REFRESH=7200 \ + futuretech6/real-url-proxy-server # 目前支持 amd64, amr64 +# 也可也使用 docker-compose +docker compose up -d ``` ## 感谢 diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 0000000..5845ced --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,14 @@ +version: '3' + +services: + real-url-proxy-server: + build: + context: . + image: futuretech6/real-url-proxy-server + container_name: real-url-proxy-server + restart: unless-stopped + ports: + - 8888:8888 + environment: + - PORT=8888 + - REFRESH=7200 From baca1db92e6cda055be411080d0f29dd16c9e809 Mon Sep 17 00:00:00 2001 From: xiyao <48900010+futuretech6@users.noreply.github.com> Date: Sat, 18 May 2024 17:44:50 +0800 Subject: [PATCH 3/3] Update Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 3b57816..e634244 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ FROM --platform=$BUILDPLATFORM node:alpine as base RUN apk add --no-cache python3 python3-dev py3-pip -RUN pip3 install requests PyExecJS +RUN pip3 install requests PyExecJS --break-system-packages FROM base as build