短视频运营神器:基于 Docker 部署 TikTok/抖音无水印下载解析器
本教程介绍如何在 Linux 服务器上,利用 Docker 快速部署一个支持多用户、自带 Web 界面、且能自动保存视频到本地的下载器。
一、 环境准备
在开始之前,请确保你的服务器已安装 Docker 和 Docker Compose。
# 创建项目专用目录
mkdir -p /root/douyin-api/download
cd /root/douyin-api
二、 核心配置文件
在 /root/douyin-api 目录下创建两个核心文件。
1. 编写 config.yaml
这是程序的“大脑”,决定了接口端口和下载行为。 注意: 我们将端口设为 18080 以避开 80 端口被封锁的风险。(文章结尾有附件,直接下载即可)
# Web
Web:
# APP Switch
PyWebIO_Enable: true # Enable APP | 启用APP
# APP Information
Domain: https://douyin.wtf # Web domain | Web域名
# APP Configuration
PyWebIO_Theme: minty # PyWebIO theme | PyWebIO主题
Max_Take_URLs: 30 # Maximum number of URLs that can be taken at a time | 一次最多可以取得的URL数量
# Web Information
Tab_Title: Douyin_TikTok_Download_API # Web title | Web标题
Description: Douyin_TikTok_Download_API is a free open-source API service for Douyin/TikTok. It provides a simple, fast, and stable API for developers to develop applications based on Douyin/TikTok. # Web description | Web描述
Favicon: https://raw.githubusercontent.com/Evil0ctal/Douyin_TikTok_Download_API/main/logo/logo192.png # Web favicon | Web图标
# Fun Configuration
Easter_Egg: true # Enable Easter Egg | 启用彩蛋
Live2D_Enable: true
Live2D_JS: https://fastly.jsdelivr.net/gh/TikHubIO/TikHub_live2d@latest/autoload.js
# API
API:
# Network Configuration
Host_IP: 0.0.0.0 # default IP | 默认IP
Host_Port: 18080 # default port is 80 | 默认端口为80
Docs_URL: /docs # API documentation URL | API文档URL
Redoc_URL: /redoc # API documentation URL | API文档URL
# API Information
Version: V4.1.2 # API version | API版本
Update_Time: 2025/03/16 # API update time | API更新时间
Environment: Demo # API environment | API环境
# Download Configuration
Download_Switch: true # Enable download function | 启用下载功能
# File Configuration
Download_Path: "./download" # Default download directory | 默认下载目录
Download_File_Prefix: "douyin.wtf_" # Default download file prefix | 默认下载文件前缀
# iOS Shortcut
iOS_Shortcut:
iOS_Shortcut_Version: 7.0
iOS_Shortcut_Update_Time: 2024/07/05
iOS_Shortcut_Link: https://www.icloud.com/shortcuts/06f891a026df40cfa967a907feaea632
iOS_Shortcut_Link_EN: https://www.icloud.com/shortcuts/06f891a026df40cfa967a907feaea632
iOS_Shortcut_Update_Note: 重构了快捷指令以兼容TikHub API。
iOS_Shortcut_Update_Note_EN: Refactored the shortcut to be compatible with the TikHub API.
# 代理(可选)
Proxy:
Proxy_Switch: false # 暂时设为 false,
Http_Proxy: ""
Https_Proxy: ""
# 建议:如果后续 TikTok 无法解析,去注册一个 TikHub Token 填在这里
TikHub:
Token: ""2. 编写 docker-compose.yml
配置容器的镜像、路径映射和网络模式。(文章结尾有附件,直接下载即可)
version: '3.9'
services:
douyin_tiktok_download_api:
image: evil0ctal/douyin_tiktok_download_api
container_name: douyin_tiktok_download_api
restart: always
network_mode: "host" # 使用主机模式减少网络损耗
volumes:
- ./config.yaml:/app/config.yaml # 映射配置文件
- ./download:/app/download # 映射下载目录到宿主机
三、 部署与运行
执行以下命令启动服务:
# 启动容器
docker compose up -d
# 查看运行状态
docker ps
# 查看实时日志(报错排查必看)
docker logs -f douyin_tiktok_download_api
四、 安全加固与反向代理(1Panel 篇)
为了防止流量被他人盗用,建议使用 1Panel 面板进行反代并开启访问验证。
创建反向代理:
在 1Panel “网站”菜单创建站点。
代理地址填:
http://127.0.0.1:18080。
配置 HTTPS:
使用 1Panel 绑定的 Cloudflare DNS 账户申请 SSL 证书。
开启身份验证(Basic Auth):
在网站设置中开启“网站访问验证”。
设置用户名和密码。这是保护你流量资产的关键。
五、 自动化运维建议
1. 自动清理过期视频
由于开启了本地保存,视频会占用硬盘空间。建议在 1Panel 的“计划任务”里添加以下 Shell 脚本,每天执行一次,自动删除 3 天前的视频:
#!/bin/bash
# 删除3天前的视频文件
find /root/douyin-api/download -mtime +3 -name "*.mp4" -exec rm -rf {} \;
2. 多用户使用说明
该部署方案支持多用户同时登录使用。由于 PyWebIO 框架特性,每个用户的会话是相互独立的,解析进度和操作互不干扰。
结语:通过以上步骤,你就拥有了一个属于自己的无水印视频下载站。
自用配置文件附件:
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 柯舟听风
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果