日度归档:2021年8月17日

基于docker快速部署Nextcloud私有云 2021-8-17

需求描述

快速部署Nextcloud私有云盘,搭配Transmission服务,实现BT下载,云播放,混合实现

2021-12-30 更新博客,增加ocDownloader的内容,ocDownloader在docker的nextcloud这边有点问题,暂不推荐

推荐的服务器配置 2核心 1.5GB内存 12G SSD系统盘 1TB HDD直通硬盘作为数据盘

部署步骤

// 创建需要的目录
// /var/www/nextcloud 为需要的Nextcloud WEB文件目录
// /media/vData 为直通的1TB HDD硬盘的挂载目录
root@debian:~# mkdir -p /var/www/nextcloud /media/vData

// /media/HDD1TB在服务器环境里的挂载目录
root@debian:~# docker run -d --name myNext -p 9888:80 -v /var/www/nextcloud:/var/www/html -v /media/HDD1TB:/var/www/vDISK nextcloud

// 浏览器打开 http://10.11.11.109:9888/ 初始化设置用户名

// 再次打开 http://10.11.11.109:9888/

// 进行Nextcloud配置
-- 右上角落 - setting - Personal info - Language - 简体中文
-- 右上角落 - 应用 - External storage support - Enable 启用
--                 Preview Generator - 下载并启用,视频预览。
-- 右上角落 - 设置 - 管理 - 外部存储 
-- 右上角落 - 设置 - 个人 - 外部存储 - 勾 - 红色变绿色
+ 目录名称 HDD1TB
+ 外部存储 本地
+ 认证 无
+ 配置 /var/www/vDISK
+ 可用于 admin分组

// ocDownloader在docker之类有点问题,暂不推荐
// -- 右上角落 - 应用 - ocDownloader - Enable 启用
// 这个支持 磁力,HTTP直链,Youtube-dl,BT。下载BT注意版权问题。
// 如果提示Aria2c是否以服务方式运行?,则在主机上执行如下命令
// apt install daemon
// apt install rpcbind
// apt install aria2
// aria2c --daemon --enable-rpc=true
// aria2c --enable-rpc -D
// reboot

在文件目录,可以看到挂载的盘的目录

2022-4-15 增补,如果出现如下报错提示,处理方式

Access through untrusted domain

Please contact your administrator. If you are an administrator, edit the "trusted_domains" setting in config/config.php like the example in config.sample.php.


Further information how to configure this can be found in the documentation.

我这里就是修改 /var/www/nextcloud/config/config.php ,修改后重启容器。

root@debian:/var/www/nextcloud/config# docker ps -a
CONTAINER ID   IMAGE       COMMAND                  CREATED       STATUS       PORTS                  NAMES
8c948ba20c33   nextcloud   "/entrypoint.sh apac…"   2 hours ago   Up 2 hours   0.0.0.0:9888->80/tcp   myNext

root@debian:/var/www/nextcloud/config# docker restart 8c948ba20c33
8c948ba20c33
root@debian:/var/www/nextcloud/config# 
Donate
云乞讨

Debian 10环境上,部署安装Transmission,可供BT下载 2021-8-17

需求描述

孩子需要看奥特曼,父母要看影视剧,要看凹凸曼,国内剧可以通过哎呦疼(爱奇艺视频,优酷视频,腾讯视频)在线观看,但是一般的海外的影视剧集,由于版权和其他原因,就很难有正规的观看途径了,于是又不得不回归以前的BT下载的路子。

这里,介绍的是,在Linux环境上,部署并安装BT下载的客户端Transmission,满足日常的BT下载的需求

部署环境 1核心1G内存12G SSD的系统盘的虚机,1TB机械硬盘的整盘直通硬盘为数据盘

操作系统 Debian 10

// 安装步骤
root@debian:~# apt-get update
root@debian:~# apt-get install transmission-daemon
// 版本信息 transmission-cli (2.94-2+deb10u2)
// 默认增加的用户 debian-transmission
// 以增加的10GB的磁盘,先模拟1TB直通盘的目录,进行软件部署
为VM增加10GB的数据盘

对挂载的盘,进行格式化,创建文件系统,挂载到系统

挂载盘到系统
// 给到访问权限
root@debian:~# mkdir -p /media/HDD1TB/downloads /media/HDD1TB/ingDowns
root@debian:~# chown -R debian-transmission:debian-transmission /media/HDD1TB

配置文件路径 /etc/transmission-daemon/settings.json

修改配置文件前,先备份一下,然后修改,主要修改内容如下

// 停止服务
root@debian:~# systemctl stop transmission-daemon

// 修改配置文件
root@debian:~# vi /etc/transmission-daemon/settings.json
// 修改的条目
#替换为远程连接的密码
"rpc-password":"A0Ead5Bd93EBF21D2087BaC2aC6071F2A1FF3EFA1Ed87E5c",
#远程管理访问端口
"rpc-port": 9999,
#登陆用户名
"rpc-username": "Tnx",
#可远程访问连接的IP白名单
"rpc-whitelist": "10.11.11.*,10.0.0.*,127.0.0.*",
"rpc-whitelist-enabled": true,
#常规的上下行限速设置,单位是KB/s
"speed-limit-down": 1024, #平时的下载限速
"speed-limit-down-enabled": true, #启用平时下载限速
"speed-limit-up": 20, #平时上传限速
"speed-limit-up-enabled": true, #启用平时上传限速
#分享率设置,人人为我,我为人人
"ratio-limit": 2,
"ratio-limit-enabled": true,
#设置下载目录,正在下载的目录
"download-dir": "/media/HDD1TB/downloads",
"incomplete-dir": "/media/HDD1TB/ingDowns",
"incomplete-dir-enabled": true,
#下载队列最大的数量,也就是同时下载的最大个数
"download-queue-enabled": true,
"download-queue-size": 8,


// 启动服务
root@debian:~# systemctl start transmission-daemon	

通过浏览器访问控制页面 http://服务器的IP:9999/transmission 即可

已添加磁力链接,进行下载
-- -- -- -- 分割线 -- -- -- -- 
附录2,进阶的配置,让Transmission的所有流量全部走socks5代理

配置到启动服务中,设置环境变量
...
[Service]
User=debian-transmission
Environment="HTTP_PROXY=http://127.0.0.1:7890" "HTTPS_PROXY=http://127.0.0.1:7890" "ALL_PROXY=socks5://127.0.0.1:7891"
Type=notify
...

官方说明
Transmission uses the libcurl library for http- and https-based tracker announces and scrapes. 
Transmission doesn't support proxies, but libcurl itself honors a handful of environment variables to customize its proxy behavior.
-- -- -- -- 分割线 -- -- -- -- 
附录1, 一些其他参数的含义中文说明如下,根据自身需要进行补充的配置设置

"alt-speed-up": 500, # 限速时段上传限速值
"alt-speed-down": 500, # 限速时段下载限速值
"alt-speed-enabled": false,
"alt-speed-time-begin": 540,
"alt-speed-time-day": 127, # 时段限速日期(星期几),127 表示每天,更复杂配置参考官网。用 7 位二进制数表示,然后转换成十进制数,0000001 表示周日,1000000 表示周六,0000010 表示周一,0000100 表示周二。如果你只要在周末限速,该数应该 1000001,转换为十进制就是 65
"alt-speed-time-enabled": true, # 启用限速,为 false 时,以上计划配置则不生效,生效时会自动禁用 alt-speed-enabled 配置,二者只能选一个
"alt-speed-time-end": 420, # 限速时段结束时间,这个配置表示的是凌晨零点到开始时间的分钟数,比如 7:00 就是 7*60=420。需要注意的是,该时间是用的 GMT 时间,即北京时间 -8 小时。比如你计划北京时间 7 点 30 分开始,这个数字应该是(7-8+24)*60+30=1410
"bind-address-ipv4": "0.0.0.0", # IPv4 地址绑定,一般不要改动
"bind-address-ipv6": "::", #IPv6 地址绑定,一般不要改动
"blocklist-enabled": true, # 启动白名单,默认不启动,需要启动改为 true
"blocklist-updates-enabled": false,
"blocklist-url": "http://www.example.com/blocklist",
"cache-size-mb": 4, #缓存大小,以 MB 为单位,建议设大一些,避免频繁读写硬盘而伤硬盘,建议设为内存大小的 1/6~1/4
"compact-view": false,
"dht-enabled": false, #关闭 DHT(不通过 tracker 寻找节点)功能,不少 PT 站的要求,但 BT 下载设置为 true 会使得下载更好
"download-dir": "/share/Downloads", #下载的内容存放的目录
"download-queue-enabled": true,  # 下载队列开关
"download-queue-size": 5, # 下载队列数量
"encryption": 1, # 加密。指定节点的加密模式,默认 1。0 表示关闭 , 0= 不加密,1= 优先加密,2= 必须加密
"lazy-bitfield-enabled": true, # 默认为 true,设置为 true 时可以避免某些 ISP 通过查询完整位段来屏蔽 BT,从而破解部分 ISP 对 BT 的封杀,当然不一定完全有效
"idle-seeding-limit": 30,
"idle-seeding-limit-enabled": false,
"incomplete-dir": "/share/Downloads",  # 临时文件路径
"incomplete-dir-enabled": false,
"inhibit-desktop-hibernation": true,
"lpd-enabled": false, #禁用 LDP(本地节点发现,用于在本地网络寻找节点), 不少 PT 站的要求
"main-window-height": 500,
"main-window-is-maximized": 0,
"main-window-width": 615,
"main-window-x": 337,
"main-window-y": 211,
"message-level": 2,
"open-dialog-dir": "/share/Download",  # 网页对话框打开的根目录
"peer-congestion-algorithm": "",
"peer-limit-global": 240, # 全局连接数
"peer-limit-per-torrent": 60, # 每个种子最多的连接数
"peer-port": 51413, # 传入端口,预设的 port 口
"peer-port-random-high": 65535, # 传入端口随机值范围上限
"peer-port-random-low": 49152, # 传入端口随机值范围下限
"peer-port-random-on-start": false, # 启用随机端口,默认关闭,不建议改为 true
"peer-socket-tos": "default",
"pex-enabled": false, # 是否启用用户交换,默认为 true,关于 PEX,有兴趣的朋友可参考 http://en.wikipedia.org/wiki/Peer_exchange,对于只用 PT 的朋友,可以设为 false, 禁用 PEX(节点交换,用于同已与您相连接的节点交换节点名单), 不少 PT 站的要求
"port-forwarding-enabled": true, # 启用端口转发(uPnP),如果路由支持并且也开启了 uPnP,则路由会自动做端口映射,但是需要注意的是如果内网有几台机器同时使用 transmission,就必须更改 peer-port 值为不一样
"preallocation": 1, # 预分配文件磁盘空间,0= 关闭,1= 快速,2= 完全。建议取 1 开启该功能,防止下载大半了才发现磁盘不够。取 2 时,可以减少磁盘碎片,但速度较慢。
"prefetch-enabled": 1,
"queue-stalled-enabled": true,
"queue-stalled-minutes": 30,
"ratio-limit": 2, # 分享率限制
"ratio-limit-enabled": false, # 启用分享率限制,默认不启用
"rename-partial-files": true, #在未完成的文件名后添加后缀.part,false= 禁用
"rpc-authentication-required": true, # 远程控制需要验证,默认为需要
"rpc-bind-address": "0.0.0.0", # 远程控制地址绑定,允许 IP 通过 RPC 访问,默认值表示任何地址都可以访问
"rpc-enabled": true, # 启用远程控制,默认启用
"rpc-host-whitelist-enabled": true, # 是否开启主机白名单
"rpc-host-whitelist": "", # 白名单,如果需要远程访问,最好配置
"rpc-password": "{cxxxxxxxxxxaE", #web-ui 的密码,可直接修改,重新运行或者 reload 服务的时候密码会自动 HASH 增加安全性
"rpc-port": 9091, # 默认 web-ui 的 port 口,也是远程控制端口,可自行更改
"rpc-url": "/transmission/",
"rpc-username": "transmission", #默认登入名称,也是远程控制用户名
"rpc-whitelist": "127.0.0.1", # 远程控制白名单,默认值为所有地址,支持通配符*,如 192.168.2.*
"rpc-whitelist-enabled": true, # 启用远程控制白名单,如果启用,则仅仅上面列出的地址可以远程连接
"scrape-paused-torrents-enabled": true,
"script-torrent-done-enabled": false,
"script-torrent-done-filename": "/home/",
"seed-queue-enabled": false,
"seed-queue-size": 10,
"show-backup-trackers": true,
"show-extra-peer-details": false,
"show-filterbar": true,
"show-notification-area-icon": false,
"show-options-window": true,
"show-statusbar": true,
"show-toolbar": true,
"show-tracker-scrapes": true,
"sort-mode": "sort-by-age",
"sort-reversed": false,
"speed-limit-down": 300, #平时的下载限速
"speed-limit-down-enabled": true, #启用平时下载限速
"speed-limit-up": 30, #平时上传限速
"speed-limit-up-enabled": true, #启用平时上传限速
"start-added-torrents": false,
"statusbar-stats": "total-ratio",
"torrent-added-notification-enabled": true,
"torrent-complete-notification-enabled": true,
"torrent-complete-sound-enabled": true,
"trash-can-enabled": true,
"trash-original-torrent-files": false,
"umask": 18,
"upload-slots-per-torrent": 14
"utp-enabled": true, #启用μTP 协议
"watch-dir": "/share/bt",  # 监听文件夹目录
"watch-dir-enabled": false # 是否监听文件夹

视频里的树莓派2 model B,供电是5V 1A,功耗也就5W,电费几乎可以忽略不计。

Donate
云乞讨