找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 49|回复: 0

[资源/教程分享] 分享一下自己用的docker compose

[复制链接]

1

主题

10

回帖

146

积分

管理员

积分
146
发表于 2025-10-15 00:48:36 | 显示全部楼层 |阅读模式

一、常用工具类服务

1. d2c:Docker run 命令转 Compose 配置工具

version: '3.9'services:d2c:image: crpi-xg6dfmt5h2etc7hg.cn-hangzhou.personal.cr.aliyuncs.com/cherry4nas/d2c:latestcontainer_name: d2cvolumes:- /var/run/docker.sock:/var/run/docker.sock:ro  # 读取Docker套接字以获取容器信息- /vol2/1000/docker/composeout:/app/compose    # Compose文件输出目录(需提前创建)environment:NAS: debian                                # 系统类型(可自定义)CRON: "once"                               # 运行模式:once(单次)/ 定时任务(如0 0 * * *)TZ: Asia/Shanghai                          # 时区设置NETWORK: true                              # 网络配置(保持默认)restart: always                            # 容器重启策略:始终重启

2. pt-accelerator:PT下载加速的hosts修改工具

version: '3.9'services:pt-accelerator:image: eternalcurse/pt-accelerator:latestcontainer_name: pt-acceleratorrestart: alwaysports:- "23333:23333"                           # 服务访问端口(可自定义)environment:TZ: Asia/Shanghaivolumes:- /etc/hosts:/etc/hosts                    # 映射主机hosts文件(修改会影响全局网络)- /vol2/1000/docker/pt-accelerator/config:/app/config  # 配置文件目录- /vol2/1000/docker/pt-accelerator/logs:/app/logs      # 日志文件目录

5f44ce05abba7a241170e93a1bb13fb8.png

mp、jellyfin、tmm都需要tmdb的网络,也可以使用dnschecker手动添加

3. watchtower:自动更新Docker镜像服务

version: '3.9'services:watchtower:image: containrrr/watchtower:latestcontainer_name: watchtowerenvironment:TZ: Asia/Shanghaivolumes:- /var/run/docker.sock:/var/run/docker.sock  # 必需映射,用于操作Docker容器restart: alwayscommand: --schedule "0 0 3 * * *" allinone --cleanup  # 每天凌晨3点更新所有镜像并清理旧版
注意:需要配置schedule,百度一下

4. cookiecloud:网站Cookie同步管理服务(需配合浏览器插件)

version: '3.9'services:cookiecloud:image: easychen/cookiecloud:latestcontainer_name: cookiecloud-apprestart: alwaysvolumes:- /data:/data/api/data                      # Cookie数据存储目录ports:- "8088:8088"                              # 服务访问端口(可自定义)
注意:cookiecloud需要浏览器安装cookiecloud插件,mp pt站点可能需要

======================
二、电视类服务

1. allinone:电视源订阅管理服务(需官方申请密钥)

version: '3.9'services:allinone:image: youshandefeiyang/allinone:latestcontainer_name: allinoneprivileged: true                           # 特权模式(部分功能需要)restart: alwaysenvironment:TZ: Asia/Shanghaiports:- "35455:35455"                           # 服务端口(勿修改,需与客户端匹配)network_mode: host                         # 主机网络模式(直接使用主机端口)command: -tv=true -aesKey=xxxxx -userid=xxxxxx -token=xxxxxx  # 必需参数(需替换为官方申请值)

需要使用tg申请key,网络需要魔法,没有域名情况,可以用host模式,使用ipv6地址远程使用

2. allinone_format:allinone的电视源格式转换拓展

version: '3.9'services:allinone_format:image: yuexuangu/allinone_format:latestcontainer_name: allinone_formatrestart: alwaysnetwork_mode: hostports:- "35456:35456"                           # 拓展服务端口(可自定义)volumes:- /path/to/config:/app/config              # 配置文件目录(需替换为实际路径)

3. iptv-sources:IPTV电视源聚合与检测服务

version: '3.9'services:iptv-sources:image: herberthe0229/iptv-sources:latestcontainer_name: iptv-sourcesrestart: alwaysports:- "8081:8080"                              # 服务访问端口volumes:- /data:/app/m3u                           # IPTV源文件存储目录(M3U格式)environment:ENABLE_IPTV_CHECKER: "true"              # 启用源检测功能IPTV_CHECKER_URL: "http://localhost:8084" # 检测服务地址(可自定义)CUSTOM_GITHUB_RAW_SOURCE_PROXY_URL: "https://ghproxy.net"  # GitHub代理(加速源获取)

注意:容器端口不能修改,还需要使用iptv-update.sh更新源,具体百度一下!

#!/bin/sh定义日志文件路径LOG_FILE="/vol1/1000/docker/iptv-sources/update-sources.log"执行内部更新命令并重定向输出(覆盖模式)docker exec iptv-sources /bin/sh /app/update-sources.sh > $LOG_FILE 2>&1

c146493e4a88f69cc85036369302801e.png

4. iptv_api:IPTV电视源API接口服务

version: '3.9'services:iptv_api:container_name: iptv-apiimage: guovern/iptv-api:latestrestart: alwaysports:- "8124:8124"                              # API服务端口environment:APP_WORKDIR: /iptv-api                   # 工作目录LITE: 'False'                            # 完整模式(非精简版)APP_PORT: '8124'                         # 内部端口(保持一致)APP_HOST: http://localhost               # 服务主机地址network_mode: hostvolumes:- /vol2/1000/docker/IPTV-API/config:/iptv-api/config  # 配置文件目录- /vol2/1000/docker/IPTV-API/output:/iptv-api/output  # 电视源输出目录

直接输入IP+端口就能获取电视源文件

5. php-epg:IPTV电视源管理系统(含MySQL数据库)

version: '3.9'services:php-epg:image: taksss/php-epg:latestcontainer_name: php-epgvolumes:- /epg/data:/htdocs/data                   # EPG数据存储目录ports:- "5678:80"                                # Web界面端口(可自定义)depends_on:- mysql                                  # 依赖MySQL数据库- phpmyadmin                             # 依赖数据库管理工具restart: alwaysphp-epg依赖的MySQL数据库mysql:image: mysql:8.0container_name: mysqlenvironment:MYSQL_ROOT_PASSWORD: root_password       # 数据库root密码(需修改为强密码)MYSQL_DATABASE: phpepg                   # 数据库名称MYSQL_USER: phpepg                       # 数据库用户MYSQL_PASSWORD: phpepg                   # 数据库用户密码ports:- "3306:3306"                              # MySQL端口(建议仅内网访问)restart: alwaysphp-epg依赖的数据库管理工具phpmyadmin:image: phpmyadmin/phpmyadmin:latestcontainer_name: phpmyadminports:- "8082:80"                                # Web管理界面端口environmentMA_HOST: mysql                          # 数据库主机名(指向mysql服务)PMA_PORT: 3306                           # 数据库端口depends_on:- mysql                                  # 依赖MySQL服务启动

访问web页面为IP+端口/manage.php 更多学习资料访问EPG-Server项目

573f441257f7ac4cf10cf783a8eabde5.png

======================
三、视频类服务

1. jellyfin:开源媒体播放平台(支持硬件转码)

version: '3.9'services:jellyfin:image: nyanmisaka/jellyfin:latestcontainer_name: jellyfinports:- "8096:8096"                              # Web管理界面端口- "8920:8920"                              # 媒体流端口devices:- /dev/dri:/dev/dri                        # Intel核显硬解(需主机支持)volumes:- /vol3/1000/影视库1:/media1               # 媒体文件存储目录1(需替换为实际路径)- /vol5/1000/影视库2:/media2               # 媒体文件存储目录2(需替换为实际路径)- /vol2/1000/docker/jellyfin/cache:/cache  # 缓存目录- /vol2/1000/docker/jellyfin/config:/config # 配置文件目录restart: alwaysenvironment:TZ: Asia/ShanghaiPUID: 0                                   # 用户ID(建议改为非root用户,如1000)PGID: 0                                   # 组ID(建议与PUID一致)network_mode: host                         # 主机网络模式(避免端口冲突)

没有域名想远程访问可以容器网络改成host,ipv6访问

f5a9c6282838631adb79d00d60ac6506.jpg

e16808a178758a03e32762ed3e7a568e.jpg

2. tinymediamanager:电影电视元数据刮削工具

version: '3.9'services:tinymediamanager:image: dzhuang/tinymediamanager:latest-v5  # 支持中文界面的版本container_name: tinymediamanagerports:- "5811:5800"                              # Web界面端口(5800为容器内部端口,勿修改)- "5900:5900"                              # VNC访问端口environment:TZ: Asia/ShanghaiPUID: 1000                                # 请修改为当前系统用户ID(如1000)PGID: 1000                                # 请修改为当前系统用户组IDvolumes:- /vol2/1000/docker/tinyMediaManager/config:/config  # 配置文件目录- /vol3/1000/影视库1:/media/media1       # 媒体文件目录1(需与jellyfin一致)- /vol5/1000/影视库2:/media/media2       # 媒体文件目录2(需与jellyfin一致)restart: always

注意:使用需要tmdb的apikey,自己申请一下!界面支持中文,输入需要使用粘贴板!中文不支持

f46a4cdf21fb85de5d44b8f0084f10a8.jpg

3. mkvtoolnix: 视频文件封装与处理工具

version: '3.9'services:mkvtoolnix:image: jlesage/mkvtoolnix:latestcontainer_name: mkvtoolnixrestart: alwaysports:- "5800:5800"                              # Web界面端口volumes:- /vol2/1000/docker/mkvtoolnix/config:/config  # 配置文件目录- /vol5/1000/影视库2/Download:/storage    # 待处理媒体文件目录(需替换)environment:TZ: Asia/ShanghaiENABLE_CJK_FONT: 1                        # 启用中文字体支持(自动下载)

这个有对应的Windows的gui版本,可以增加减少视频的字幕文件和音轨等处理

c83211dbc056bd9cb75c5e4d63068b72.png

4. moviepilot:PT资源管理服务

version: '3.9'services:moviepilot:container_name: container_name: moviepilot-v2      # 服务名称hostname: moviepilot-v2                             # 主机名image: jxxghp/moviepilot-v2:latest                # 镜像地址restart: alwaysstdin_open: truetty: trueports:- "3000:3000"                              # 服务端口1- "3001:3001"                              # 服务端口2volumes:- /vol3/1000/影视库1:/media                # 媒体文件目录1- /vol5/1000/影视库2:/media2               # 媒体文件目录2- /vol2/1000/docker/moviepilot v2/config:/config  # 配置文件目录- /vol2/1000/docker/moviepilot v2/core:/moviepilot/.cache/ms-playwright  # 核心配置目录- /var/run/docker.sock:/var/run/docker.sock:ro  # 读取Docker套接字(管理容器用)environment:NGINX_PORT: 3000                          # Nginx端口PORT: 3001                                # 服务端口PUID: 0                                   # 用户ID(建议改为非root)PGID: 0                                   # 组ID(建议与PUID一致)UMASK: 000                                # 权限掩码TZ: Asia/ShanghaiAUTH_SITE: PT站点                         # PT站点名称(需替换)XXX_UID: 站点ID                           # 站点用户ID(需替换为多个站点信息)XXX_PASSKEY: 站点key                      # 站点Passkey(需替换)GITHUB_PROXY: https://gh-proxy.com/        # GitHub加速代理

注意:使用需要PT站点,需要一个已经过考核的站点,配置好,使用过程中如果搜索不到pt站点的资源,关闭站点里面的模拟登陆

7beb893b17612794fa9ac6dc15f19dc1.jpg

======================
四、音乐类服务

1. music-tag-web:音乐文件元数据刮削工具

version: '3.9'services:music-tag:image: xhongc/music_tag_web:latestcontainer_name: music-tag-webports:- "8002:8002"                              # Web界面端口(可自定义)volumes:- /vol3/1000/音乐:/app/media:rw            # 音乐文件目录(需替换为实际路径)- /vol2/1000/docker/music_tag_web/config:/app/data  # 配置文件目录restart: always

Windows端有musictag.exe代替

5b76bfe2be990680c51a58631df79606.jpg

2. xiaomusic:小米音箱本地音乐播放控制

version: '3.9'services:xiaomusic:container_name: xiaomusicimage: hanxi/xiaomusic:latestrestart: alwaysports:"58090:8090"                            # 服务端口(可自定义)environment:XIAOMUSIC_PUBLIC_PORT: 58090             # 对外暴露端口(需与ports一致)TZ: Asia/ShanghaiXIAOMUSIC_SEARCH: bilisearch             # 搜索源(默认 bili 搜索)XIAOMUSIC_HOSTNAME: 192.168.0.30         # NAS内网IP(需替换为实际IP)MI_PASS: xxxxx                           # 小米账号密码(需替换)MI_USER: 'xxxxx'                         # 小米账号ID(需替换)MI_DID: XXXXXX,XXXXXX,XXXXXX             # 音箱设备ID(多个用逗号分隔,需替换)volumes:/vol2/1000/docker/xiaomusic:/app/conf:rw # 配置文件目录/vol3/1000/音乐:/app/music:rw            # 音乐文件目录(需与music-tag一致)

0dd6dbfdccdce59168afcf14c2566b56.jpg

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

本站由纳斯五零(NAS50.CN),版权所有,保留部分权利。豫ICP备2023035803号-1

Archiver|手机版|小黑屋|Discuz! X

GMT+8, 2025-10-24 17:01 , Processed in 0.105040 second(s), 28 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表