Skip to content

DDS-Derek/BGmi-All-In-One-Docker

Repository files navigation

BGmi All In One Docker

Build Test

注意,Dockerhub仓库从ddsderek/bgmi-docker-all-in-one换为ddsderek/bgmi-all-in-one

参考 https://github.com/codysk/bgmi-docker-all-in-one 大佬的镜像制作而成。

功能

  1. 硬链接,硬链接通过内置硬链接脚本实现。
  2. PUIDPGIDUmask配置。
  3. 内置 aria2-pro,transmission 下载器。
  4. Transmission 下载器内置 Transmission Web Control UI。
  5. Aria2 下载器内置 Ariang 管理界面。
  6. Aria2 下载器自动 ban 掉迅雷等不受欢迎客户端。
  7. Aria2 下载器内置 Anime trackers。
  8. 常用脚本 bgmi_download bgmi_hardlink
  9. 镜像体积小,层数少。
  10. 内置FileBrowser,管理文件更方便(通过IP:PORT/file访问)。

BGmi介绍

官方介绍和使用方法

部署

docker-cli

Transmission

注意:镜像内置Transmission Web Control管理界面,访问IP:PORT/tr,此PORT与访问BGmi Web端口为同一端口

docker run -itd \
  --name=bgmi \
  --restart always \
  -v /bgmi:/bgmi \
  -v /media:/media \
  -p 80:80 \
  -p 51413:51413/tcp \
  -p 51413:51413/udp \
  -e TZ=Asia/Shanghai \
  -e PGID=1000 \
  -e PUID=1000 \
  -e UMASK=022 \
  -e MEDIA_DIR=/media/cartoon \
  -e DOWNLOAD_DIR=/media/downloads \
  -e BGMI_DATA_SOURCE=mikan_project \
  -e BGMI_HTTP_ADMIN_TOKEN=password \
  -e BGMI_HARDLINK_USE=true \
  -e FILEBROWSER_USE=true \
  -e TR_USER=bgmi \
  -e TR_PASS=password \
  -e TR_PEERPORT=51413 \
  ddsderek/bgmi-all-in-one:transmission

Aria2

注意:镜像内置Ariang管理界面,访问IP:PORT/ariang,此PORT与访问BGmi Web端口为同一端口 其中Aria2 RPC端口做了Nginx反向代理,与访问BGmi Web端口为同一端口,类似于图中这样设置

docker run -itd \
  --name=bgmi \
  --restart always \
  -v /bgmi:/bgmi \
  -v /media:/media \
  -p 80:80 \
  -p 6888:6888/tcp \
  -p 6888:6888/udp \
  -e TZ=Asia/Shanghai \
  -e PGID=1000 \
  -e PUID=1000 \
  -e UMASK=022 \
  -e MEDIA_DIR=/media/cartoon \
  -e DOWNLOAD_DIR=/media/downloads \
  -e BGMI_DATA_SOURCE=mikan_project \
  -e BGMI_HTTP_ADMIN_TOKEN=password \
  -e BGMI_HARDLINK_USE=true \
  -e FILEBROWSER_USE=true \
  -e ARIA2_UPDATE_TRACKERS=true \
  -e ARIA2_CUSTOM_TRACKER_URL=https://raw.githubusercontent.com/DDS-Derek/Aria2-Pro-Docker/main/tracker/all.list \
  -e ARIA2_LISTEN_PORT=6888 \
  -e ARIA2_RPC_PORT=6800 \
  -e ARIA2_RPC_SECRET= \
  -e ARIA2_DISK_CACHE= \
  -e ARIA2_IPV6_MODE= \
  --cap-add=NET_ADMIN \
  ddsderek/bgmi-all-in-one:aria2

不使用内置下载器

docker run -itd \
  --name=bgmi \
  --restart always \
  -v /root/config/bgmi:/bgmi \
  -v /media:/media \
  -p 80:80 \
  -e TZ=Asia/Shanghai \
  -e PGID=1000 \
  -e PUID=1000 \
  -e UMASK=022 \
  -e MEDIA_DIR=/media/cartoon \
  -e DOWNLOAD_DIR=/media/downloads \
  -e BGMI_DATA_SOURCE=mikan_project \
  -e BGMI_HTTP_ADMIN_TOKEN=password \
  -e BGMI_HARDLINK_USE=false \
  -e FILEBROWSER_USE=true \
  ddsderek/bgmi-all-in-one:latest

docker-compose

transmission

docker-compose

Aria2

docker-compose

不使用内置下载器

docker-compose

参数说明

镜像TAG

TAG 解释
latest 只包含BGmi程序的镜像
transmission 包含BGmi和transmission的镜像
aria2 包含BGmi和aria2的镜像

BGmi

参数 作用
-e TZ 时区设置
-e PUID 启动程序用户ID
-e PGID 启动程序用户组ID
-e UMASK 权限掩码
-e MEDIA_DIR BGmi 硬链接目录(目录必须在 /media 下)
-e DOWNLOAD_DIR BGmi 下载目录(目录必须在 /media 下)
-e BGMI_DATA_SOURCE 设置 BGMI 默认数据源(bangumi_moe、mikan_project 或 DMHY)
-e BGMI_HTTP_ADMIN_TOKEN 设置 BGMI Web 界面身份验证令牌
-e BGMI_HARDLINK_USE 是否启用镜像内置的硬链接脚本(默认开启)
-e FILEBROWSER_USE 是否启用镜像内置的FileBrowser
-p 80 BGmi Web 端口
-v /bgmi 配置文件
-v /media 媒体文件夹,包含下载文件和硬链接文件

Transmission

参数 作用
-e TR_USER transmission Web 登入用户
-e TR_PASS transmission Web 登入密码
-e TR_PEERPORT 种子传输端口

Aria2

此镜像内置使用Aria2-Pro,具体参数设置请看Aria2-Pro-Docker官方说明

PUID GUID 说明

当在主机操作系统和容器之间使用卷(-v标志)权限问题时,我们通过允许您指定用户PUID和组来避免这个问题PGID

确保主机上的任何卷目录都归您指定的同一用户所有,并且任何权限问题都会像魔术一样消失。

在这种情况下PUID=1000PGID=1000找到你的用途id user如下:

  $ id username
    uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)

硬链接说明

硬链接 BGmi 下载的新番资源,改善文件格式以便于自动化刮削,并且不会影响保种。

硬链接后的目录格式用于刮削器的自动识别,配置正确的话可以完全避免刮削。目前的配置适用于 Jellyfin 的刮削器, 理论上也可适用于绝大多数刮削器。

  • 番剧存储于文件夹 BANGUMI_FOLDER_FORMAT 下。默认格式是 {name},如“小林家的龙女仆”。 也可以设置为嵌套,如 {name}/Season {season},即“小林家的龙女仆/Season 2”。
  • 番剧的命名格式为 BANGUMI_FILE_FORMAT,默认是 S{season:0>2d}E{episode:0>2d}.{format}。 如“S01E01.mp4”。