先弄清楚原理

首先从【资源搜索】或者【推荐栏目】寻找自己想看的电影,执行订阅或者搜索资源启动下载,下载电影存放在downloads/mov目录下,【媒体整理】就是将mov子目录下电影文件复制到downloads/link子目录下,

默认情况下,nastool在link建7个中文的子目录,并且在整理过程中将不同类型的媒体文件“复制”到相应的子目录下,并且完成电影其它信息及字幕等的下载。

这里需要说明的是这个“复制”有很多种模式,其中硬链接是比较推荐使用的,他实际并没有真正复制整个文件过去,而是在源文件和文件名之间建立了一个链接,这样做的好处是在两个目录都能读到这个文件,在不影响原来目录结构情况下能有一个分类清楚的目录结构,方便查找相应的媒体文件。

之所以要做这样的整理也由于下载工具的要求,下载工具在完成下载后还需要进一些业务,就是所谓的 “做种” ,这样其它需要的客户从你这里直接下载,如果直接改变了存放目录,下载工具就无法找到这个文件了。这也体现的是p2p的分享理念。

【媒体整理】需要提前设置整理的目录,系统就会定时自动完成这个整理过程,只有无法识别的媒体才需要从【媒体整理】中手动执行。

整理好媒体文件存放在downloads/link目录下,媒体服务其就可以从这里读取文件,提供媒体的播放等服务了。

建三个目录

涉及到不同的系统共享文件以及docker内外关系,文件目录问题一直困扰了我好久,是安装失败的主要原因,所以有必要在一种相对简单的状态下先把系统跑起来,细节了解以后可以进一步调整,否则极其有可能半途而废了。所以先在准备存放媒体盘上建立以下三个目录:

/mnt/disk8t1/nastools/downloads/link #用于存放硬链接的link目录

/mnt/disk8t1/nastools/downloads/mov #用于存放电影文件的mov目录

/mnt/disk8t1/nastools/sys #各个系统存放配置文件的目录

部署nastool

打开ssh工具,我这里经常使用的是FinalShell还是很方便的,输入以下命令,注意有时往往需要超级管理员才有权限执行,所以需要先 sudo -i 进入超级管理员模式。

docker run -d \
--name nas-tools \
--hostname nas-tools \
-p 3000:3000 `# 默认的webui控制端口` \
-v /mnt/disk8t1/nastools/sys/nastool:/config/ `# 冒号左边请修改为你想在主机上保存配置文件的路径` \
-v /mnt/disk8t1/nastools/downloads/:/media/ `# 媒体目录,多个目录需要分别映射进来` \
-e PUID=1000 `# 想切换为哪个用户来运行程序,该用户的uid,详见下方说明` \
-e PGID=1000 `# 想切换为哪个用户来运行程序,该用户的gid,详见下方说明` \
-e UMASK=000 `# 掩码权限,默认000,可以考虑设置为022` \
-e NASTOOL_AUTO_UPDATE=false `# 如需在启动容器时自动升级程程序请设置为true` \
--restart unless-stopped \
jxxghp/nas-tools

正常就可以从以下网址方位nastool了。

http://192.168.1.201:3000/

部署jellyfin

这是本人选择的媒体服务软件,Nastool还支持Emby和Plex的接入。在docker安装基本就是分两步:

  • 1、拉镜像

    docker pull nyanmisaka/jellyfin
  • 2、启动容器
sudo docker run -d \
--name=jellyfin \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Shanghai \
-e JELLYFIN_PublishedServerUrl=http://192.168.1.201 `#optional` \
-p 8096:8096 \
-p 8920:8920 `#optional` \
-p 7359:7359/udp `#optional` \
-p 1901:1901/udp `#optional` \
-v /mnt/disk8t1/nastools/sys/jellyfin:/mnt/disk8t1/nastools/sys/jellyfin \
-v /mnt/disk8t1/nastools/downloads/link/:/mnt/disk8t1/nastools/downloads/link/ \
--restart unless-stopped \
nyanmisaka/jellyfin

好了,正常就可以通过以下网址访问jellyfin了,初次进入需要进行一些列的设置。

http://192.168.1.201:8096/

在Nastool里【设置】【媒体服务器】里面填写服务器地址和Api Key,点击测试按钮,如何显示测试成功,说明jellyfin已经成功连接到nastool了。这里要注意的是Api Key是访问服务器的钥匙,像账户密码一样不能泄露给其它人。

部署下载工具 transmission

这回就下面一条指令就可以,他发现没有镜像就会先去dockerhub.com拉下镜像,然后启动容器。

docker run \
-d \
--name transmission \
-p 9091:9091 \
-p 51413:51413 \
-v /mnt/disk8t1/nastools/sys/transmission:/config \
-v /mnt/disk8t1/nastools/downloads/mov:/data/downloads \
-e USERNAME=usr \
-e PASSWORD=password \
-e PUID=1000 \
-e PGID=1000 \
--restart unless-stopped \
gists/transmission

同样,正常的话就可以访问transmission了

http://192.168.1.201:9091

在Nastool里【设置】【下载器】进行设置,填号IP地址、端口、用户名以及密码,同样需要测试显示测试成功才可。

nastool还需要进行的其它设置

  • 设置媒体库目录

这里的mov路径之所以是/media,是因为这个是从容器中看到的路径,他已经在docker run 命令中 -v 选项对应到了容器外的路径。

-v /mnt/disk8t1/nastools/downloads/:/media/

  • 设置同步目录

这几项设置完毕,nastool基本就可以运作起来了,去【资源搜索】或【推荐】选一部片子,去试试效果吧。

Docker部署Nastool(含jellyfin、transmission)的更多相关文章

  1. 阿里云服务器centos7,docker部署mysql+Redis+vue+springboot+Nginx+fastdfs,亲测可用

    一.购买云服务器 我是今年双十一期间在阿里云购买的服务器, 简单配置2核_4G_40G_3M,三年用了不到800块,不过当时我记得腾讯云更便宜,个人感觉,阿里的云服务器更加的稳定, 毕竟身经百战, 经 ...

  2. ASP.NET Core开发-Docker部署运行

    ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...

  3. Docker部署Hadoop集群

    Docker部署Hadoop集群 2016-09-27 杜亦舒 前几天写了文章"Hadoop 集群搭建"之后,一个朋友留言说希望介绍下如何使用Docker部署,这个建议很好,Doc ...

  4. 程序开发使用docker部署

    我们公司自己研发了一套 grand-line 系统,使用 docker 来部署项目. 我是第一批小白鼠,一开始网络差,build 一次要半个小时,连接进入 web shell 也很慢,部署一个微信项目 ...

  5. 我使用celery以及docker部署遇到的问题

    首先我本机测试时没有问题的,但是在线上docker中,任务一直显示 "Sending due task".超时的任务是 django orm update 操作,本地不会出现这样的 ...

  6. Docker部署SDN环境

    2014-12-03 by muzi Docker image = Java class Docker container = Java object 前言 5月份的时候,当我还是一个大学生的时候,有 ...

  7. 在生产环境使用Docker部署应用

    导读 Docker现在越来越流行,但是真正在生产环境部署Docker还是个比较新的概念,还没有一个标准的流程.作者是ROR的程序员,作者结合平时的部署经验,联系Docker的特点,向大家分享了其在生产 ...

  8. Docker 使用指南 (六)—— 使用 Docker 部署 Django 容器栈

    版权声明:本文由田飞雨原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/98 来源:腾云阁 https://www.qclou ...

  9. NET Core Docker部署

    NET Core Docker部署 前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行 ...

  10. 我使用 Docker 部署 Celery 遇到的问题

    问题1 - Sending due task 本机测试时没有问题的,但是在线上 docker 中,任务一直显示 "Sending due task".超时的任务是 Django O ...

随机推荐

  1. lowcodeEngine 组件面板的拖拽功能

    设计器和渲染器处在不同的 Frame 渲染器以单独的 iframe 嵌入,xxx-simulator-renderer 通过和 host进行通信来和设计器打交道,比如点击渲染画布任意一个位置,需要能计 ...

  2. tesseract-ocr 安装、语言库、使用 随记

    前几日才听说ocr的图片识别功能.觉得很有意思.先体验一下. 地址: GitHub - tesseract-ocr/tesseract: Tesseract Open Source OCR Engin ...

  3. js,php中的面向对象

    面向对象 js中的面向对象: 面向对象(OOP):通过函数封装得到的一个类 1.类的本质还是函数 每个类(函数)天生有一个prototype的属性,这个prototype又是一个对象,这个对象里有个c ...

  4. [SQL Server]储存过程中使用临时表循环操作数据

    本文为原创文章,转载请注明出处!我的博客地址:http://www.cnblogs.com/txwd 由于工作原因,到目前为此已有一年多没有写SQL Server的储存过程了,已有些生疏.日前工作中有 ...

  5. [Swift]使用Alamofire传递参数时报错

    p.p1 { margin: 0; font: 11px Menlo; color: rgba(0, 0, 0, 1) } span.s1 { font-variant-ligatures: no-c ...

  6. 10,java双向链表基础代码复现

    双向链表总体来说和单链表差别不大,最大的区别就是node结构中多了一个pre指针(变量)指向前一个节点,因为有了之前的单链表基础,双向链表的复现问题少了很多,基本可以不参考老师的代码自主写下来. 1. ...

  7. Python 堆、栈和队列详解

    队列: 1.队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表.进行插入操作的端称为队尾,进 ...

  8. (0709) Linux-命令(scp,tar) zip

    (1) scp .bashrc root@192.168.1.6:vnc://cfy-hp-notebook-pc.local (2) tar -czvf a.tar.gz b            ...

  9. RocketMq 下载安装

    下载地址 https://rocketmq.apache.org/zh/download linux安装步骤 启动nameserver bin目录下启动nameserver nohup sh mqna ...

  10. pj_time_swap

    #!/usr/bin/python# -*- coding: UTF-8 -*- import timeimport refrom datetime import datetime, timezone ...