English | 简体中文
I am a cloud computing engineer🤓, focusing on Serverless/FinOps/Runtime, developed Kubespider in my spare time.
The original intention of developing Kubespider is: I have an idle server(in a local area network), and I want to use it as a NAS to realize automatic TV series downloads, trigger downloads on a local laptop, and adapt to various website(YouTube, BiliBili, etc.) and different type resources(TV series, movie, music, etc.)
I was exposed to Terraform before and was surprised by its versatility. Inspired by Terraform, Kubespider aims to build a general download orchestration system, which is compatible with various resource platforms and download software, compatible with multiple download methods(request trigger, cycle trigger, update trigger) and is the most perfect unified solution for resource download.
To realize a general download orchestration system, it is necessary to adapt various resource websites and download software, so these two parts are abstracted from the core functions:

kubespider-core: The core module of Kubespider accepts the trigger download request, calls the resource provider for resolution (it will eventually be resolved into a standard mode, such as the user enters the bilibili blogger address, and the corresponding resource provider outputs the mp4 file address download list), and finally calls the download provider to implement Download; this module will also periodically call providers (such as TV series provider) to download additional resources.source-provider:The provider of each resource website accepts input of general resource addresses, and outputs standard resource address URLs, such as the personal homepage of a YouTuber, and outputs all mp4 download addresses of the blogger’s videos. The configuration file is in ./kubespider/source_provider.cfg.download-provider:The provider of each download software receives the request task from kubespider-core, and calls the corresponding service to realize the download. The configuration file is in ./kubespider/download_provider.cfg.To adapt to multiple resource platforms, Kubespider provides many adapters. Enable or disable these adapters according to your needs. The configuration file is in the .kubespider folder:
git clone https://github.com/jwcesign/kubespider.git
cd kubespider
bash hack/install.sh
Output like:
root@cesign [09:01:34 PM] [+22.0°C] [~/git/kubespider] [main *]
-> # bash hack/install.sh
_ _ _ _
| | ___ _| |__ ___ ___ _ __ (_) __| | ___ _ __
| |/ / | | | '_ \ / _ \/ __| '_ \| |/ _` |/ _ \ '__|
| <| |_| | |_) | __/\__ \ |_) | | (_| | __/ |
|_|\_\\__,_|_.__/ \___||___/ .__/|_|\__,_|\___|_|
|_|
[INFO] Start to deploy with default configuration...
b13820946878c4f00635e7fa3db64ea83506850ebb7d07ff77b62814db1d894a
WARNING: Published ports are discarded when using host network mode
9c0aa1059f1546a4f1a2accac445ce1389f1c400b96328f3e18c8af03f0bbc70
[INFO] Deploy successful, check the information:
*******************************************
Kubespider config path: /root/.kubespider/
Download file path: /root/kubespider/nas/
Kubespider webhook address: http://<server_ip>:3080
Aria2 server address: http://<server_ip>:6800/jsonrpc, you can use any gui or webui to connect it
Aria2 default secret is:kubespider
*******************************************
Kubespide and Aria2 resource downloader as the default downloader.${HOME}/kubespider/nas.${HOME}/.kubespider/.To check the download tasks, go to the chrome store to download Aria2 plugin.
Then connect, the plug-in configuration is as follows (the configuration has been output at the end of install.sh script):

Of course, it is not necessary, you can also use the desktop program to connect: AriaNg
TBD (No release yet, please check link to install the chrome plugin)
Kubespider combined with the chrome plug-in can get a better experience. If I want to download a movie, I can right click and send the download task Kubespider(demo website):
If you are interested in participating in joint development, welcome to STAR/FORK/PR, please check link for Roadmap.
All downloading and use of the software are deemed to have carefully read and fully agreed to the following terms:
Content type
Image
Digest
sha256:95a9da4b8…
Size
95 MB
Last updated
5 months ago
docker pull cesign/kubespider