前言
之前介绍过用tianliAPI添加文章AI摘要,那个要花钱今天分享给大家一个免费的。
介绍
Core AI Power是由lovestu开发的一款WordPress AI增强插件。旨在为WordPress提供一些AI功能。
目前提供的主要功能是,AI内容摘要。
目前接入的API是免费的文心一言,所有WordPress网站,都可以快速接入。
对比tianliAPI的好处是可以指定给某个文章使用AI摘要并且使用文心一言的免费API。
截图

之前介绍过用tianliAPI添加文章AI摘要,那个要花钱今天分享给大家一个免费的。
Core AI Power是由lovestu开发的一款WordPress AI增强插件。旨在为WordPress提供一些AI功能。
目前提供的主要功能是,AI内容摘要。
目前接入的API是免费的文心一言,所有WordPress网站,都可以快速接入。
对比tianliAPI的好处是可以指定给某个文章使用AI摘要并且使用文心一言的免费API。

因为之前安装了WPOPT,里面有个功能就是能够在控制台查看MYSQL查询次数以及页面创建的时间,之前一直都是高达四十几次的查询次数。
所以就决定安装redis将数据库查询次数降低下来。
如果服务器内有两个WordPress程序,请先将其中一个WordPress程序的数据库表开头从wp_改为其他的,否则会出现相互干扰的情况。
本教材基于宝塔面板教学,特别方便。
1.首先到宝塔面板的软件商店找到redis 并且安装。
![]()
2.找到PHP版本,并且安装redis 扩展。

3.WordPress后台搜索并安装Redis Object Cache 。

4.设置插件启用对象存储,如出现下图则表示启用成功。

5.最后看一下MYSQL的查询次数。

只有2次查询次数,刷新了几次最多也就是15左右,大部分都是个位数,效果相当给力。
CoreNext主题自带的编辑器增强内有标星面板,但是颜色有点少,所以找了个教程给WordPress添加彩色文本渐变框。
1.首先将如下代码添加到CoreNext子主题的function.php 中,如果其他主题也有子主题一样操作。
add_action('after_wp_tiny_mce', 'bolo_after_wp_tiny_mce');
function bolo_after_wp_tiny_mce($mce_settings) {
?>
<script type="text/javascript">
QTags.addButton( 'z_mhz', '迷幻紫', '<div id="zm_mhz">迷幻紫</div>\n', "" );
QTags.addButton( 'z_xgh', '西瓜红', '<div id="zm_xgh">西瓜红</div>\n', "" );
QTags.addButton( 'z_tkzj', '天空之境', '<div id="zm_tkzj">天空之境</div>\n', "" );
QTags.addButton( 'z_xyz', '小宇宙', '<div id="zm_xyz">小宇宙</div>\n', "" );
QTags.addButton( 'z_gll', '橄榄绿', '<div id="zm_gll">橄榄绿</div>\n', "" );
QTags.addButton( 'z_xty', '小太阳', '<div id="zm_xty">小太阳</div>\n', "" );
QTags.addButton( 'z_yyz', '优雅紫', '<div id="zm_yyz">优雅紫</div>\n', "" );
QTags.addButton( 'z_szh', '深邃黑', '<div id="zm_szh">深邃黑</div>\n', "" );
QTags.addButton( 'z_wbk', '无边框', '<div id="zm_wbk">无边框</div>\n', "" );
function bolo_QTnextpage_arg1() {
}
</script>
<?php
}
2.将如下CSS代码添加到CoreNext子主题的CSS文件夹中的main.css中
/*渐变框区块*/
#zm_mhz,#zm_xgh,#zm_tkzj,#zm_xyz,#zm_gll ,#zm_xty,#zm_yyz,#zm_szh,#zm_wbk{
/*圆角值,在此定义*/
border-radius: 8px;
}
/*迷幻紫*/
#zm_mhz{
color: #555555;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px;*/
box-shadow: 6px 0 12px -5px rgb(190, 196, 252), -6px 0 12px -5px rgb(189, 196, 252);
background-color: #8EC5FC;
background-image: linear-gradient(62deg,#8EC5FC 0%,#E0C3FC 100%);
background-image: -webkit-linear-gradient(62deg,#8EC5FC 0%,#E0C3FC 100%);
}
/*西瓜红*/
#zm_xgh{
color: #555555;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px;*/
box-shadow: 6px 0 12px -5px rgb(255, 176, 172), -6px 0 12px -5px rgb(255, 161, 174);
background-color: #ff9a8b66;
background-image: linear-gradient(220deg,#FF9A8B 0%,#ff6a8838 55%,#FF99AC 100%);
background-image: -webkit-linear-gradient(220deg,#ff9a8b7a 0%,#ff6a88ab 55%,#ff99ac82 100%);
}
/*华为P30 天空之境*/
#zm_tkzj {
color: #555555;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px;*/
box-shadow: 6px 0 12px -5px rgb(253, 223, 234), -6px 0 12px -5px rgb(215, 240, 243);
background-color: #FFDEE9;
background-image: linear-gradient(0deg,#ffdee9c4 0%,#b5fffc8f 100%);
background-image: -webkit-linear-gradient(0deg,#ffdee9c4 0%,#b5fffc8f 100%);
}
/*小宇宙*/
#zm_xyz {
color: #eeeeee;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px;*/
box-shadow: 6px 0 12px -5px rgb(12, 85, 141), -6px 0 12px -5px rgba(10, 58, 93, 0);
background-image: radial-gradient( circle 263px at 100.2% 3%, rgba(12,85,141,1) 31.1%, rgba(205,181,93,1) 36.4%, rgba(244,102,90,1) 50.9%, rgba(199,206,187,1) 60.7%, rgba(249,140,69,1) 72.5%, rgba(12,73,116,1) 72.6% );
}
/*橄榄绿*/
#zm_gll {
color: #eeeeee;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px;*/
box-shadow: 6px 0 12px -5px rgb(68, 110, 92), -6px 0 12px -5px rgb(204, 212, 163);
background-image: linear-gradient( 102deg, rgba(68,110,92,1) 17.4%, rgba(107,156,120,1) 49.3%, rgba(154,183,130,1) 83.4%, rgba(247,237,191,1) 110.3% );
}
/*小太阳*/
#zm_xty {
color: #ffffff;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px; */
box-shadow: 6px 0 12px -5px rgb(253, 223, 234), -6px 0 12px -5px rgb(215, 240, 243);
background-image: radial-gradient( circle farthest-corner at -8.9% 51.2%, rgba(255,124,0,1) 0%, rgba(255,124,0,1) 15.9%, rgba(255,163,77,1) 15.9%, rgba(255,163,77,1) 24.4%, rgba(19,30,37,1) 24.5%, rgba(19,30,37,1) 66% );
}
/*优雅紫*/
#zm_yyz {
color: #ffffff;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 10px;*/
box-shadow: 6px 0 12px -5px rgb(175, 160, 208), -6px 0 12px -5px rgba(177, 161, 207, 0);
background-image: radial-gradient( circle farthest-corner at 10% 20%, rgba(95,117,227,1) 0%, rgba(188,167,205,1) 90% );
}
/*深邃黑*/
#zm_szh {
color: #c7c7c7;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
/*border-radius: 5px;*/
box-shadow: 6px 0 12px -5px rgb(155, 170, 185), -6px 0 12px -5px rgba(177, 161, 207, 0);
background-image: radial-gradient( circle farthest-corner at 10% 20%, rgba(0,0,0,1) 0%, rgba(64,64,64,1) 90.2% );
}
/*无边框*/
#zm_wbk {
color: #000000;
overflow: hidden;
margin: 10px 0;
padding: 15px 15px 15px 35px;
}
#zm_xyz a , #zm_gll a{
color: #eeeeee;
}
#zm_szh a{
color: #c7c7c7;
}
#zm_xty a, #zm_yyz a{
color: #ffffff;
}
3.现在就可以在编辑器内添加如下代码使用效果了。
<div id="zm_mhz">迷幻紫</div>
<div id="zm_xgh">西瓜红</div>
<div id="zm_tkzj">天空之境</div>
<div id="zm_xyz">小宇宙</div>
<div id="zm_gll">橄榄绿</div>
<div id="zm_xty">小太阳</div>
<div id="zm_yyz">优雅紫</div>
<div id="zm_szh">深邃黑</div>
<div id="zm_wbk">无边框</div>


新闻来源:百度热搜榜
1. 国乒女团横扫埃及 晋级8强 8月5日,奥运乒乓球女子团体赛首轮比赛,由孙颖莎、陈梦、王曼昱、王艺迪(P卡)组成的国乒女团,以3-0战胜埃及队成功晋级。
2. 平衡木掉木不断 奥运会体操女子平衡木决赛,中国选手周雅琴获得银牌。比赛中大批选手出现掉下器械的失误,美国名将拜尔斯也掉下了器械,引发关注。
3. 上半年外贸运行稳中有进 今年上半年,外贸运行稳中有进,货物贸易展现较强韧性和市场活力,确实呈现量增、质优、份额稳的特点。
4. 全红婵陈芋汐晋级十米台决赛 北京时间8月5日晚,巴黎奥运会跳水项目女子10米台半决赛在巴黎水上运动中心进行。中国选手全红婵、陈芋汐排名前两位晋级决赛。
5. 郑钦文无缘成闭幕式旗手 据北青体育报道,创造历史获得奥运网球女单金牌的郑钦文,已经离开巴黎备战接下来的比赛,无缘成为奥运会闭幕式的女旗手。
6. 女子铁饼决赛冯彬摘银 北京时间8月6日凌晨,在巴黎奥运会女子铁饼决赛中,中国选手冯彬发挥出色获得一枚银牌。
7. HPV疫苗降价至一杯奶茶钱
8. 甘肃天水推出房屋以旧换新?不实 近日,甘肃天水市秦州区民警发现网络上有“房子以旧换新服务”相关视频,经查,当地并无该政策,系发布者为了推销新楼盘编造谣言。
9. 张佳宁回应被暗恋专业户 8月5日,在《私藏浪漫》见面会上,张佳宁回应“被暗恋专业户”称号:自己的长相能更让普通女孩有代入感。
10. 肖若腾 揣进兜的金牌没了
—- 百度热搜新闻 End —-
新闻来源:知乎日榜
标题: 线列步兵战术为何在欧洲流行了上百年?
链接: https://daily.zhihu.com/story/9774335
———————-
标题: 我们身上每个细胞的 DNA 都一样吗?
链接: https://daily.zhihu.com/story/9774332
———————-
标题: 甲骨文发现百年仍有大半未破译,破译难点在哪?
链接: https://daily.zhihu.com/story/9774338
———————-
标题: 什么是「系外行星」,有哪些有效的搜寻方法和著名的系外行星?
链接: https://daily.zhihu.com/story/9774344
———————-
标题: 瞎扯 · 如何正确地吐槽
链接: https://daily.zhihu.com/story/9774348
———————-
—- 知乎新闻 End —-
新闻来源:ITHome之家科技新闻
标题: 小米王化辟谣 MIUI 体验总负责人金凡离职:他在闭关,年内出关
发布时间: 2024-08-05T13:42:04.84
新闻简介: 近期有消息称小米集团手机部副总裁、MIUI 体验总负责人金凡将离开小米,或者不再负责 MIUI(澎湃 OS)的业务。
———————-
标题: 罗永浩称俞敏洪“铁公鸡”,消息称交个朋友紧急通知下架相关视频
发布时间: 2024-08-05T10:52:33.13
新闻简介: 据三言 Pro 报道,最近有网传图片显示,交个朋友公司 8 月 3 日晚向其授权的切片账号发出紧急通知,要求在 8 月 3 日 24 点前下架所有涉及罗永浩谈论俞敏洪的负面视频,否则将取消授权。这是因为近期出现了大量关于罗永浩批评俞敏洪的负面评论。
———————-
标题: 苹果秋季新品曝光:2024 款 M4 芯片 MacBook Pro、Mac mini 和 iMac 将至
发布时间: 2024-08-05T07:57:13.643
新闻简介: 据彭博社记者马克・古尔曼(Mark Gurman)最新报道,苹果计划在今年晚些时候推出搭载 M4 芯片的新款 MacBook Pro、Mac mini 和 iMac。此外,MacBook Air、Mac Studio 和 Mac Pro 将在 2025 年升级至 M4 芯片。
———————-
标题: 特斯拉刹车门终审判决:李女士判赔增至 7 万,鉴定机构称车辆制动系统正常有效无故障
发布时间: 2024-08-05T10:44:07.647
新闻简介: 近日,特斯拉与西安李女士(上海车展事件核心成员之一)的名誉权侵权案件迎来二审判决,李女士应赔偿特斯拉的金额由一审的 2000 元调整至 70000 元。
———————-
标题: 2024 年《财富》世界 500 强排行榜揭晓:沃尔玛第 1、华为 103、比亚迪 143、小米 397
发布时间: 2024-08-05T12:49:33.043
新闻简介: 沃尔玛连续第11年成为全球最大公司,亚马逊重回第二,中国国家电网继续位列第三,排在第四和第五位的分别是沙特阿美和中国石化。
———————-
标题: 电动车电池电梯爆燃致当事人死亡,销售者判赔 101 万元
发布时间: 2024-08-05T17:29:04.6
新闻简介: 小伙伴们可能还记得网上一条热传视频:一男子提着电动车电池进电梯,电池突然爆燃,火光吞没轿厢。男子从轿厢里被救出后,全身已烧黑。目前广州海珠区法院披露了这一案件的详情和审理结果:涉案爆炸电池属于非法二次加工改装电池,销售者张某的举证,不足以证明其销售的电池符合质量标准,应当承担相应责任。一审法院判决销售者张某对本次事故承担 70% 责任,陈某本人承担 30% 责任,张某应向陈某亲属赔偿 101 万余元。张某不服一审判决,向广州市中级人民法院上诉。二审法院判决驳回上诉,维持原判。
———————-
标题: 5288 元起,华为 nova Flip 小折叠手机开启预售:6.88mm 厚度、后置 50MP 悬停自拍
发布时间: 2024-08-05T19:36:47.493
新闻简介: 据“华为终端”官方微博,华为 nova Flip 小折叠手机价格目前已正式公布,该机将于今晚 8 点 30 分开启预售,售 5288 元起。
———————-
标题: 小米米家充气宝 2 Pro 上架:45 秒急速补气,众筹价 259 元
发布时间: 2024-08-05T16:25:52.36
新闻简介: 米家充气宝 2 Pro 黑色现已上架小米有品,众筹价 259 元,活动时间为 8 月 7 日 10:00-8 月 14 日 10:00。
———————-
标题: 凯迪拉克一 4S 老店关门“跑路”:员工全部失业,未退车主押金致集体维权
发布时间: 2024-08-05T09:53:15.877
新闻简介: 在中国市场,凯迪拉克的运营由上汽通用负责。河南旭龙凯威是凯迪拉克在河南郑州的经销商,属于在河南经营 10 余年的 4S 老店。
———————-
标题: 烈日下的外卖小哥:日均工作超 10 小时才能“月入过万”、部分骑手“从未见过高温津贴”
发布时间: 2024-08-05T17:12:52.527
新闻简介: 8 月以来,全国多地发布高温预警,“烧烤模式”下不少城市最高气温达到 40 度,但即便如此,外卖小哥仍顶着烈日穿梭在城市之间。媒体“蓝鲸新闻”采访了上海、江苏、浙江、广东、福建等地外卖小哥,对他们在极端高温天的收入情况进行调查,其中有不少外卖小哥声称他们日均跑单超 10 小时才能月入过万,而在高温补贴方面,目前仍有不少外卖骑手的高温津贴无法落实,不同地区不同平台之间的补贴力度也是层次不齐,报道称在不同地区,不同平台,众包或者专送的高温津贴都不同,有的地区甚至没有高温津贴。
———————-
标题: 比亚迪王朝全新 MPV 车型再曝谍照,有望命名为“周”
发布时间: 2024-08-05T14:07:44.557
新闻简介: 从图中可以看到,该车采用了修长车身,尾灯为细长设计。此前爆料显示,这台车是一台王朝系列中大型 MPV,它的车身长度超过 5 米,轴距超过 3 米,主打 7 座布局。
———————-
标题: 首位华人诺贝尔物理学奖得主李政道逝世,享年 98 岁
发布时间: 2024-08-05T16:17:44.27
新闻简介: 据中国新闻周刊报道,从中国科学院高能物理研究所处获悉,著名华人物理学家、诺贝尔物理学奖获得者李政道去世,享年 98 岁。此外,澎湃新闻从王垂林等多位李政道教授友人方面确认了这一消息,李政道因病医治无效,于美国时间 8 月 4 日在旧金山逝世,享年 98 岁。
———————-
—- IT之家新闻 End —-
共计 610 个字符,预计需要花费 2 分钟才能阅读完成。
由于时不时会有人问本博客右下角人物如何添加,这里还是稍微介绍一下。其实这是一个开源的项目,开源项目地址:sakana
使用起来也非常简单,如果使用的是 wordpress,那么找到主题编辑器,在 footer.php 添加如下代码即可:
<div class="sakana-box"></div>
<script src="https://cdn.jsdelivr.net/npm/sakana"></script>
<script>
// 启动
const sakana = Sakana.init({
el: '.sakana-box', // 启动元素 node 或 选择器
scale: .5, // 缩放倍数
canSwitchCharacter: true, // 允许换角色
inertia: 0.01, // 惯性
decay: 0.97, // 衰减
r: -20, // 启动角度
y: 10, // 启动高度
scale: 0.5, // 缩放倍数
translateY: 0, // 位移高度
});
</script>
<style>
html .sakana-box{
z-index: 80;
position: fixed;
right: 0;
bottom: 0;
transform-origin: 100% 100%; /* 从右下开始变换 */
}
</style>
以上是本博客使用到的参数,由于弹簧弹跳太快限制了一下,不然晃眼睛。此外需要注意的是,如果弹簧人物加载缓慢,可以将 js 文件下载到本地。
嘘,点击底座还可以切换人物哦!
Tips:清朝云网络工作室
共计 853 个字符,预计需要花费 3 分钟才能阅读完成。
之前想着离线更新内核,但是根据网上下载了内核的安装包,发现安装新的内核会牵扯到其他软件的更新问题,比如说安装新版本的内核需要 libc6 版本 >= 2.38 等等,确实有点麻烦。
后来了解到 Mainline, 它是一个用于在 Ubuntu 系统上安装最新 Linux 内核的工具。并且,它由 Ubuntu 的主线内核团队维护,使用户能够轻松地获取和安装由 Ubuntu 内核团队构建和测试的最新主线内核版本。
如果需要更新 v6.8.4 内核,执行如下脚本即可:
wget https://raw.gitcode.com/pimlie/ubuntu-mainline-kernel.sh/blobs/c53cb4ca20dac34349d691ccb872e826953ccbdd/ubuntu-mainline-kernel.sh
#wget https://github.com/pimlie/ubuntu-mainline-kernel.sh/raw/master/ubuntu-mainline-kernel.sh
sudo install ubuntu-mainline-kernel.sh /usr/local/bin/
sudo ubuntu-mainline-kernel.sh -i v6.8.4
sudo update-grub
sudo reboot
如果重启后没有使用新的内核进入,那么还需要编辑文件 /etc/default/grub,将 GRUB_TIMEOUT_STYLE 选项注释,并将 GRUB_TIMEOUT 改为 30。
#GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=30
然后执行:
sudo update-grub
sudo reboot
重启后进入 ubuntu 高级设置。

/>
这里可以选择内核进入系统。

/>
当然最方便的还是设置默认使用哪个内核,上图中从 0 开始排序,然后编辑文件 /etc/default/grub,修改 GRUB_DEFAULT 的值。
GRUB_DEFAULT=0
然后执行:
sudo update-grub
sudo reboot
Tips:清朝云网络工作室
共计 1870 个字符,预计需要花费 5 分钟才能阅读完成。
employees 表CREATE TABLE employees (
employee_id INT PRIMARY KEY,
name VARCHAR(50),
department_id INT
);
departments 表CREATE TABLE departments (
department_id INT PRIMARY KEY,
department_name VARCHAR(50)
);
INSERT INTO employees (employee_id, name, department_id) VALUES
(1, 'Alice', 1),
(2, 'Bob', 2),
(3, 'Charlie', NULL),
(4, 'David', 3);
INSERT INTO departments (department_id, department_name) VALUES
(1, 'HR'),
(2, 'Finance'),
(4, 'Engineering');
LEFT JOINSELECT e.employee_id, e.name, e.department_id, d.department_name
FROM employees e
LEFT JOIN departments d ON e.department_id = d.department_id;
结果:
+-------------+---------+--------------+----------------+
| employee_id | name | department_id| department_name|
+-------------+---------+--------------+----------------+
| 1 | Alice | 1 | HR |
| 2 | Bob | 2 | Finance |
| 3 | Charlie | NULL | NULL |
| 4 | David | 3 | NULL |
+-------------+---------+--------------+----------------+
RIGHT JOINSELECT e.employee_id, e.name, e.department_id, d.department_name
FROM employees e
RIGHT JOIN departments d ON e.department_id = d.department_id;
结果:
+-------------+---------+--------------+----------------+
| employee_id | name | department_id| department_name|
+-------------+---------+--------------+----------------+
| 1 | Alice | 1 | HR |
| 2 | Bob | 2 | Finance |
| NULL | NULL | NULL | Engineering |
+-------------+---------+--------------+----------------+
FULL JOIN(通过 UNION 实现)SELECT e.employee_id, e.name, e.department_id, d.department_name
FROM employees e
LEFT JOIN departments d ON e.department_id = d.department_id
UNION
SELECT e.employee_id, e.name, e.department_id, d.department_name
FROM employees e
RIGHT JOIN departments d ON e.department_id = d.department_id;
结果:
+-------------+---------+--------------+----------------+
| employee_id | name | department_id| department_name|
+-------------+---------+--------------+----------------+
| 1 | Alice | 1 | HR |
| 2 | Bob | 2 | Finance |
| 3 | Charlie | NULL | NULL |
| 4 | David | 3 | NULL |
| NULL | NULL | NULL | Engineering |
+-------------+---------+--------------+----------------+
Tips:清朝云网络工作室
共计 2189 个字符,预计需要花费 6 分钟才能阅读完成。
之前搭建了 Navidrome 服务器,不了解的可以看这篇文章 Docker 搭建音乐服务器 Navidrome。并且之前的方案一直是使用开心版的酷我音乐下载歌曲,下好以后放在指定目录,再通过 windows 上的 musictag 软件刮削歌词和封面,再通过 syncthing 进行文件同步,再重启 Navidrome。
然而,偶尔听见一首喜欢的歌,想要下载放到音乐服务器上,都需要这样操作有点麻烦。还有一点更重要的是,刮削需要通过 windows 软件来操作有点麻烦。于是我现在的方案就是,通过 aria2 进行下载到指定目录,再通过 music-tag-web 进行手动刮削即可。
当然,需要下载的文件哪里来呢?答案是通过两个 tg 机器人配合,Let’s Music 机器人可以获得想要下载的文件,TgFileurl 可以将 tg 文件转发得到 http 连接。
还有有问题的小明又问了,我连 aria2 图形界面我也不想打开,又要怎么办?这个时候就用到了 webhook,先将脚本放在服务器上,通过传递文件名给脚本,让脚本发起 aria2 的 rpc 请求。具体如何搭建 webhook,请看 Docker 搭建 webhook – 调用接口即可运行本地脚本。
配置文件:
- id: aria2
execute-command: "/hooks/aria2.sh"
command-working-directory: "/hooks/"
include-command-out-in-response-on-error: true
pass-arguments-to-command:
- source: url
name: url
脚本内容:
#!/bin/bash
set -x
url=$1
# 这个可以通过 ariang 页面,f12 获取
curl -d "{\"jsonrpc\":\"2.0\",\"method\":\"aria2.addUri\",\"id\":\"QXJpYU5nXzE3MTk5Nzc4XDFfMC41MDg4MjcxMjQzMzIyMDU2\",\"params\":[\"token:123456\",[\"${url}\"],{}]}" https://xxx.com/jsonrpc
# 等下载完重启服务器
sleep 10
docker restart navidrome
这样的话只需要获取到 mp3 的 http 链接,然后调用 webhook,将 http 地址当作 url 传递即可。
然后整体的 docker-compose 文件如下:
version: '3.1'
services:
navidrome:
image: deluan/navidrome:0.51.1
container_name: navidrome
ports:
- 4533:4533
environment:
- ND_LOGLEVEL=info
volumes:
- /home/docker/navidrome/data:/data
- /home/docker/navidrome/music:/music
restart: always
aria2:
image: superng6/aria2:webui-latest
container_name: aria2
environment:
- SECRET=123456
- CACHE=512M
ports:
- "32516:32516"
- "32516:32516/udp"
- "6800:6800"
- "8080:8080"
volumes:
- /home/docker/aria2/config:/config
- /home/docker/aria2/downloads:/downloads
- /home/docker/navidrome/music/mp3:/downloads/mp3
music-tag:
image: xhongc/music_tag_web:2.1.1
container_name: music-tag
restart: always
ports:
- "8002:8002"
volumes:
- /home/docker/music-tag/data:/app/data
- /home/docker/navidrome/music/mp3:/app/media
webhook:
container_name: webhook
image: hausen1012/webhook
ports:
- 9000:9000
volumes:
- /home/docker/webhook/config:/etc/webhook
- /home/docker/webhook/hooks:/hooks
- /usr/bin/docker:/usr/bin/docker
- /run/docker.sock:/var/run/docker.sock
command: ["-verbose", "-hooks=/etc/webhook/hooks.yaml", "-hotreload"]
对了 music-tag-web 需要激活 v2 版本才有自动刮削功能,有需要的可以支持一下作者,这款软件还是挺好用的。否则可能需要手动刮削,不过即使不手动,下载好使用音流同步一下也是能听的,只不过没有歌词而已。
至于一些细节问题,可以自行处理。比如设置反代,还有 aria2 的远程调用需要的密码,设置下载的文件夹等等。其实还可以通过 filebrowser 来进行文件管理,现在我就是这么干的。
Tips:清朝云网络工作室
共计 1579 个字符,预计需要花费 4 分钟才能阅读完成。
LUKS(Linux Unified Key Setup)是一个标准,定义了在Linux系统上进行磁盘加密的格式和规范。
而 cryptsetup 是一个实现了 LUKS 标准的工具,用于在 linux 系统上管理磁盘加密。它能够创建、管理和解锁加密的磁盘分区或整个硬盘。主要功能包括设置加密选项、创建加密设备映射、打开和关闭加密设备等。
使用 cryptsetup 对分区进行加密后,该加密分区无法直接挂载到文件系统上使用,因为操作系统无法直接识别和处理加密数据。相反,需要通过 cryptsetup 工具创建一个解密的映射,将其映射到 /dev/mapper 目录下的一个设备节点上。
centos:
yum install cryptsetup -y
debian系:
apt install cryptsetup -y
假设需要加密的磁盘分区为 /dev/sdb1。
sudo cryptsetup luksFormat /dev/sdb1
将看到以下输出:
WARNING: Device /dev/sdb1 already contains a 'ext4' superblock signature.
WARNING!
========
This will overwrite data on /dev/sdb1 irrevocably.
Are you sure? (Type uppercase yes): YES
需要输入 YES 并回车。
然后系统将提示输入一个新的 LUKS 密钥并确认。
Enter passphrase for /dev/sdb1:
Verify passphrase:
sudo cryptsetup open /dev/sdb1 mydevice
这里会提示需要输入密钥。完成以后,将会在 /dev/mapper 下创建一个映射 /dev/mapper/mydevice。
如果是第一次对硬盘进行加密,那么需要进行格式化才能使用,对于已经加密过的硬盘,直接下一步挂载即可。
sudo mkfs.ext4 /dev/mapper/mydevice
sudo mount /dev/mapper/mydevice /mnt
首先需要取消挂载文件系统:
sudo umount /mnt
然后关闭加密设备:
sudo cryptsetup close mydevice
可以使用如下命令确认是否成功:
# 查看已挂载的文件系统
mount | grep /mnt
# 查看已打开的加密设备
sudo cryptsetup status mydevice
生成随机字符串,写入文件:
sudo dd if=/dev/urandom bs=1 count=1024 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev > /root/.luks_pass
设置文件权限,只允许 root 读写:
sudo chmod 600 /root/.luks_pass
设置开机自动解密 luks 分区:
$ vim /etc/crypttab
# <name> <device> <password> <options>
mydevice /dev/sdb1 /root/.luks_pass
# 还可以使用分区的 uuid. lsbid
#mydevice UUID=xxxx /root/.luks_pass
把密码添加到luks加密中,这一步必须执行才能使密码生效:
# 系统将向指定的 LUKS 加密分区(/dev/sdb1)添加一个额外的解密密钥
sudo cryptsetup luksAddKey /dev/sdb1 /root/.luks_pass
设置挂载点:
$ vim /etc/fstab
#配置新的home挂载信息
/dev/mapper/mydevice /mnt ext4 defaults 0 0
查看加密设备:
sudo cryptsetup status mydevice
Tips:清朝云网络工作室
共计 203 个字符,预计需要花费 1 分钟才能阅读完成。
由于使用了webhook,但其实比如做一些操作还需要传递特定的参数,这个时候还需要去复制对应的 url 拼接参数,现在搞个tgbot就可以直接交互使用了。
先获取一个音乐文件。

/>
再获取对应的url。

/>
再将url发给自己的机器人,机器人获取到链接以后,请求webhook。

/>
之后就可以看见文件下载到服务器。

/>
音流同步一下就能看见音乐了。

/>
当然了,如果有时间的话,可以去 music-tag-web 页面给音乐刮削一下歌词封面等。

/>
Tips:清朝云网络工作室