华为云云耀云服务器L实例评测|部署个人音乐流媒体服务器 navidrome

华为云云耀云服务器L实例评测|部署个人音乐流媒体服务器 navidrome

  • 一、云耀云服务器L实例介绍
    • 1.1 云服务器介绍
    • 1.2 产品规格
    • 1.3 产品优势
    • 1.4 支持镜像
  • 二、云耀云服务器L实例配置
    • 2.1 重置密码
    • 2.2 服务器连接
    • 2.3 安全组配置
  • 三、部署 navidrome
    • 3.1 navidrome 介绍
    • 3.2 Docker 环境搭建
    • 3.3 navidrome 部署
    • 3.4 navidrome 使用
  • 四、总结

一、云耀云服务器L实例介绍

1.1 云服务器介绍

云服务器是现代应用程序部署的理想选择。首先,云服务器提供了高度可扩展性,您可以根据需求灵活地增加或减少计算资源,这有助于节省成本和应对流量波动。其次,云服务器具备高可用性,数据备份和冗余使您的应用程序更加稳定,降低了停机时间。此外,云服务器还提供了全球分布式计算,允许您将应用程序和数据部署在全球不同的数据中心,以提供更快的访问速度和更好的用户体验。

华为云焕新推出华为云云服务器实例新品,华为云云服务器具有智能不卡顿、价优随心用、上手更简单、管理特省心这四个优点,从而帮您快速上云!

在这里插入图片描述

从8月底到10月中旬,参与华为云云服务器开启评测活动,可以获得54.99元的优惠券,购买 华为云云耀云服务器L实例 轻量服务器一个月仅需支付0.03元。

在这里插入图片描述
还有 限时秒杀专区,华为云云耀云服务器L实例 每日限量抢购,优惠仅限1单,抢完即止!

在这里插入图片描述

1.2 产品规格

选择华为云云耀云服务器L实例配置时,一般会标注几个关键的硬件参数如下

云服务器配置说明
vCPU2核表示分配给虚拟机的虚拟中央处理器数量,影响服务器可以处理的并发任务数和性能。
内存2GB表示服务器分配的随机存取内存大小,影响服务器同时运行的应用程序的数量和性能。
系统盘40GB表示分配给服务器的硬盘空间大小,用于存储操作系统、应用程序和数据文件。
流量包400GB表示服务器允许的网络传输数据量,通常以每月为单位,影响服务器与外部通信的数据量。
峰值带宽3Mbit/s表示服务器的最大网络传输速度,通常以每秒传输的数据量为单位,影响服务器在网络通信时的传输速率。

目前暂不支持直接更换套餐升级CPU、内存规格。您可以通过如下两种升级CPU、内存规格。

  • 退订当前套餐,重新购买想要的规格套餐
  • 参考升级云耀云服务器L实例规格升级CPU、内存规格。但是通过这种方式升级规格后,您的业务将切换到弹性云服务器而非云耀云服务器L实例。

1.3 产品优势

  • 智能不卡顿:华为云擎天架构加持,软硬协同结合AI算法智能调度,为您提供优质性能。
  • 价优随心用:多种实例规格,平衡性能与成本。
  • 上手更简单:严选多款高品质镜像,经过华为云官方严格测试,覆盖七大场景,预置模板,快速搭建,安全可信。
  • 管理更省心:拓扑、资源、镜像可视化管理,业务架构透明化管理。

1.4 支持镜像

镜像简介
系统镜像仅包含了初始操作系统,不包含任何应用数据环境配置。选用系统镜像创建云服务器后,服务器中是一个纯净的操作系统环境。您可以根据实例的业务需求自行安装应用。
应用镜像包含应用及相关初始化数据、应用所需的运行环境及操作系统。选用应用镜像创建云服务器后,您可以直接使用预置的应用程序,也可以根据实际的业务需求自定义应用配置。减少了应用的上传、安装等环节。

在这里插入图片描述

二、云耀云服务器L实例配置

2.1 重置密码

购买完成后,会短信通过你的云服务器信息,重点是公网IP地址和用户名。首先我们需要打开你的服务器控制台,完成重置密码
在这里插入图片描述
勾选自动重启,点击确定即可。
在这里插入图片描述

2.2 服务器连接

  • 方式一:使用控制台提供的VNC方式登录

  • 方式二:使用Putty、Xshell等工具登录Linux弹性云服务器,
    a) 下载安装登录工具,例如Putty。
    b) 输入弹性公网IP。
    c) 输入用户名:root、密码,单击“确定”。

  • 方式三:使用Linux/Mac OS系统主机登录Linux弹性云服务器。
    a) 执行连接命令。
    ssh 弹性公网IP
    例如:ssh 123.xxx.xxx.456
    b) 输入用户名:root、密码,登录服务器。

我个人习惯使用 MobaXterm 这款软件,添加SSH连接,输出公网IP、用户名和端口(默认22),连接即可。

在这里插入图片描述

2.3 安全组配置

安全组是一个逻辑上的分组,为同一个VPC内的云服务器提供访问策略。用户可以在安全组中定义各种访问规则,当云服务器加入该安全组后,即受到这些访问规则的保护。

系统为每个网卡默认创建一个默认安全组,默认安全组的规则是对出方向上的数据报文全部放行,入方向访问受限。您可以使用默认安全组,也可以根据需要创建自定义的安全组。
在这里插入图片描述
主要需要填写优先级(默认填1即可)、协议端口信息(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。
在这里插入图片描述
如果还不清楚可以参考文档:安全组配置示例

三、部署 navidrome

3.1 navidrome 介绍

Navidrome 可以作为一个独立的服务器使用,它允许您使用Web浏览器浏览和收听您的音乐收藏,
通过现代化的 Web 用户界面,以及适用于 iOS 和 Android 设备的各种第三方兼容移动应用程序。

功能特点

  • 非常低的资源使用率。即使在简单的树莓派零和旧硬件设置上也能很好地运行
  • 处理非常大的音乐收藏
  • 流式传输几乎任何可用的音频格式
  • 读取和使用所有精心策划的元数据
  • 对合辑(各种艺术家专辑)和盒装(多碟专辑)的强大支持
  • 多用户,每个用户都有自己的播放次数,播放列表,收藏夹等。
  • 多平台,可在macOS,Linux和Windows上运行。还提供了 Docker 镜像
  • 即用型,官方,树莓派二进制文件和Docker镜像可用
  • 自动监控库的更改、导入新文件和重新加载新元数据
  • 基于Material UI和React-Admin的主题化,现代和响应式Web界面
  • 兼容所有亚音速/音速/空气声波客户端。有关已测试客户端的列表,请参见下文
  • 即时转码。可以按用户/玩家设置。支持作品编码
  • 翻译成 17 种语言(包括中文)
  • 完全支持播放列表,可选择自动导入文件并使其保持同步.m3u
  • 智能/动态播放列表(类似于iTunes)。
  • Scrobbling to Last.fm, ListenBrainz and Maloja (通过自定义 ListenBrainz URL)
  • 共享专辑/歌曲/播放列表的公共链接
  • 反向代理身份验证

在这里插入图片描述

navidrome 的设计简约,服务器轻巧、快速、独立,体验感特别好,它没有广告,不需要隔断时间就扫码登录验证,不需要VIP,支持WEB在线播放,有浏览器的地方就可以使用,随时随地轻松获取,还可以建立歌单,常见个人专属的音乐库。

  • 官网:https://www.navidrome.org/
  • Github:https://github.com/navidrome/navidrome

3.2 Docker 环境搭建

本次服务器环境是ubuntu系统镜像,需要自己安装docker环境

服务器类别系统镜像内网IP地址Docker版本操作系统版本
云耀云服务器L实例Ubuntu192.168.0.16820.10.24Ubuntu 22.04.1 LTS

使用snap命令安装docker

root@hcss-ecs-f632:~# snap install docker
docker 20.10.24 from Canonical✓ installed

测试docker安装是否成功

root@hcss-ecs-f632:~# docker -v
Docker version 20.10.24, build 297e128

检查docker服务状态

root@hcss-ecs-f632:~# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Thu 2023-09-14 14:25:21 CST; 2 days ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 30672 (dockerd)Tasks: 73Memory: 137.0MCPU: 2min 37.906sCGroup: /system.slice/docker.service

检查docker compose版本

root@hcss-ecs-f632:~# docker compose version
Docker Compose version v2.17.2

3.3 navidrome 部署

  • 下载镜像

从 docker hub 拉取 navidrome镜像,地址:https://hub.docker.com/r/deluan/navidrome

root@hcss-ecs-f632:~# docker pull deluan/navidrome
Using default tag: latest
Pulling navidrome (deluan/navidrome:latest)...
latest: Pulling from deluan/navidrome
63b65145d645: Pull complete
aeb5bd14d375: Pull complete
4f4fb700ef54: Pull complete
8bc1516e399b: Pull complete
Digest: sha256:11a24da08977ebfa4a9a71f8c878d822ffaae74a019f274a75dc6386d523da86
Status: Downloaded newer image for deluan/navidrome:latest
docker.io/deluan/navidrome:latest
  • 配置安全组

在华为云云耀云服务器L实例的安全组管理页面,添加入方向规则,接下来我们启动服务需要监听4533端口,所以添加安全组为TCP:4533协议端口。

在这里插入图片描述

  • 启动服务

使用docker-compose方式启动,先创建文件docker-compose.yml

version: "3"
services:navidrome:image: deluan/navidrome:latestuser: 1000:1000 # should be owner of volumesports:- "4533:4533"restart: unless-stoppedenvironment:# Optional: put your config options customization here. Examples:ND_SCANSCHEDULE: 1hND_LOGLEVEL: infoND_SESSIONTIMEOUT: 24hND_BASEURL: ""volumes:- "./data:/data"- "./music/folder:/music:ro"
  • volumes:映射容器内部文件路径到本地
  • ports:配置访问端口

如果将上述代码片段保存在名为 docker-compose.yml 的文件中,则只需从同一文件夹中运行 docker compose up -d 即可自动拉取 navidrome映像,并创建并启动一个容器。 up 表示启动服务,-d 表示在后台执行。docker-compose down 命令用于停止和清理由 docker-compose up 启动的服务。

另外还需要给 navidrome 数据卷文件夹修改权限,否组无法正常启动

# 给data、music文件夹修改权限
sudo chmod 777 -R data/
sudo chmod 777 -R music/
root@hcss-ecs-f632:~/navidrome# docker-compose up -d
Creating network "navidrome_default" with the default driver
Creating navidrome... done
  • 检查容器状态

检查 navidrome容器状态,确保容器正常启动

root@hcss-ecs-f632:~/navidrome# docker ps
CONTAINER ID   IMAGE                                    COMMAND                  CREATED         STATUS                          PORTS                                                 NAMES
caed2acf15e3   deluan/navidrome:latest                  "/app/navidrome"         6 minutes ago   Restarting (1) 26 seconds ago                                                         navidrome_navidrome_1
  • 访问地址

内网:http://localhost:8096
外网:http://公网IP:8096

  • 访问结果

在这里插入图片描述

若出现此页面,则部署 navidrome server 成功。

3.4 navidrome 使用

创建管理员用户,输入用户名和密码,完成创建

在这里插入图片描述

点击右上角头像 - Personal - 个性化, 设置语言为简体中文

在这里插入图片描述

还支持多种主题风格

在这里插入图片描述

把音乐文件上传到数据卷music/folder文件夹下,我使用的MobaXterm终端支持SFTP文件传输,直接找到对应路径,将文件拖入即可

在这里插入图片描述

点击右上角折线图标,点击刷新,会自动扫描此目录下的音频文件。

在这里插入图片描述

并在所有中展示扫描到歌曲的信息,可以自由切换布局方式,网格或表格,还可以全局搜索音乐、筛选条件显示

在这里插入图片描述

点击歌曲,显示歌曲信息,支持在线播放、随机播放、下载、加入播放列表、音量调节、收藏、评分、歌词等功能。

在这里插入图片描述

还可以查看音乐的具体信息,这些信息都来自音频文件本身中

在这里插入图片描述

我们来查看下 navidrome的映射文件路径下的结构

root@hcss-ecs-f632:~/navidrome# ls
data  docker-compose.yml  music
root@hcss-ecs-f632:~/navidrome#
  • data 即为数据库和配置文件目录
  • music即为音乐音频文件目录

navidrome 支持的音频转码格式

在这里插入图片描述

navidrome 目前仅支持从标签中读取未同步的歌词(没有时间戳),ID3 标签中的歌词要使用的标记是“USLT”,不支持常见的.lrc歌词文件。

USLT 并不是一个独立的文件或文件格式,而是音频文件中的一个 ID3 标签,用于存储歌词信息。ID3 标签是音频文件中包含元数据(如歌曲名、艺术家、专辑、歌词等)的一种标准化格式。

“USLT” 是 ID3 标签中的一种特定类型,全名是 “Unsynchronized Lyrics/Text Transcription”,用于存储歌词。在这个标签中,你可以将歌曲的歌词以文本的形式存储,但不包含时间戳信息,也就是不同步的歌词。

“.lrc” files are not (yet) supported, see #1421
The only thing that is supported currently, is reading unsynced lyrics (no timestamps) from tags.
Lyrics in ID3 tags shouldn’t go in a frame called “LYRICS”. The correct tag to use would be “USLT”.
See: https://docs.mp3tag.de/mapping/#unsyncedlyrics
As far as i can see, the PR that implemented #1379 can also cope with synced lyrics (timestamps), it will just ignore the timestamps and store them as they were unsynced lyrics.
Can you please try to tag a file with lyrics in the USLT tag and see if that works?

navidrome 作为个人音乐流媒体系统的个人使用就是上面的这些了,更多的功能和配置就需要自行探索了。

四、总结

云耀云服务器L实例是新一代开箱即用、面向中小企业和开发者打造的全新轻量应用云服务器。云耀云服务器L实例提供丰富严选的应用镜像,实现应用一键部署,助力客户便捷高效的在云端构建电商网站、Web应用、小程序、学习环境、各类开发测试等。

而且云耀云服务器L实例使用门槛较低,如果您是正在了解云计算服务的入门用户,或是需要在服务器中部署简单应用的个人开发者、中小企业,比如部署一些轻量级的有趣的项目,那么推荐您选择云耀云服务器L实例

navidrome 作为个人音乐流媒体服务器,但是却非常低的资源使用率,即使在简单的树莓派零和旧硬件设置上也能很好地运行,官方演示服务器托管主机上配置也不高:1 核处理器、512MB 内存、10GB 磁盘空间,个人使用非常流畅,华为云云耀云服务器L实例应对这种需求绰绰有余。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/95578.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【动手学深度学习-Pytorch版】Transformer代码总结

本文是纯纯的撸代码讲解,没有任何Transformer的基础内容~ 是从0榨干Transformer代码系列,借用的是李沐老师上课时讲解的代码。 本文是根据每个模块的实现过程来进行讲解的。如果您想获取关于Transformer具体的实现细节(不含代码)可…

ElasticSearch - 基于 拼音分词器 和 IK分词器 模拟实现“百度”搜索框自动补全功能

目录 一、自动补全 1.1、效果说明 1.2、安装拼音分词器 1.3、自定义分词器 1.3.1、为什么要自定义分词器 1.3.2、分词器的构成 1.3.3、自定义分词器 1.3.4、面临的问题和解决办法 问题 解决方案 1.4、completion suggester 查询 1.4.1、基本概念和语法 1.4.2、示例…

Ubuntu Server CLI专业提示

基础 网络 获取所有接口的IP地址 networkctl status 显示主机的所有IP地址 hostname -I 启用/禁用接口 ip link set <interface> up ip link set <interface> down 显示路线 ip route 将使用哪条路线到达主机 ip route get <IP> 安全 显示已登录的用户 w…

PLL锁相环倍频原理

晶振8MHz&#xff0c;但是处理器输入可以达到72MHz&#xff0c;是因为PLL锁相环提供了72MHz。 锁相环由PD&#xff08;鉴相器&#xff09;、LP&#xff08;滤波器&#xff09;、VCO&#xff08;压控振荡器&#xff09;组成。 处理器获得的72MHz并非晶振提供&#xff0c;而是锁…

好工具分享:阿里云价格计算器_一键计算精准报价

阿里云服务器价格计算器&#xff0c;鼠标选择云服务器ECS实例规格、地域、系统盘、带宽及购买时长即可一键计算出精准报价&#xff0c;阿里云服务器网分享阿里云服务器价格计算器链接地址&#xff1a; 阿里云服务器价格计算器 先打开阿里云服务器ECS页面 aliyunfuwuqi.com/go…

生成Release版本的.pdb文件

软件分为Debug版本、Release版本这2种版本&#xff0c;其中Debug版本是带有.pdb调试信息文件&#xff0c;而Release版本不带.pdb调试信息文件。软件发布时&#xff0c;一般采用Release版本&#xff0c;若因内存泄漏、数组访问越界、除零错误、磁盘读写错误等异常&#xff0c;造…

计算机毕设 大数据房价预测分析与可视

文章目录 0 前言1 课题背景2 导入相关的数据 3 观察各项主要特征与房屋售价的关系4 最后 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟…

CleanMyMac X4.14.1最新版本下载

CleanMyMac X是一个功能强大的Mac清理软件&#xff0c;它的设计理念是提供多个模块&#xff0c;包括垃圾清理、安全保护、速度优化、应用程序管理和文档管理粉碎等&#xff0c;以满足用户的不同需求。软件的界面简洁直观&#xff0c;让用户能够轻松进行日常的清理操作。 使用C…

Scala第十一章节

Scala第十一章节 1.模式匹配 2. Option 类型 3.偏函数 4.正则表达式 5.异常处理 6.提取器 7.案例&#xff1a;随机职业 scala总目录 文档资料下载

如何使用 LeiaPix 让照片动起来

在过去&#xff0c;想要让照片动起来&#xff0c;需要使用专业的软件和技巧。但是&#xff0c;随着科技的发展&#xff0c;现在只需使用一个简单的工具&#xff0c;就可以轻松地让照片动起来。 LeiaPix 是一个免费的在线工具&#xff0c;可以将静态照片转换为动画。该工具使用…

C语言qsort函数

排序qsort int int cmp(const void *a, const void *b) {return *(int *)a - *(int *)b;//先强转成int型&#xff0c;后解引用取值比较大小 }字符串数组 char a[] “hello world” //字符串数组&#xff0c;存放的是字符 int cmp(const void *a, const void *b) {return *(…

嵌入式软件架构基础设施设计方法

大家好&#xff0c;今天分享一篇嵌入式软件架构设计相关的文章。 软件架构这东西&#xff0c;众说纷纭&#xff0c;各有观点。在我看来&#xff0c;软件架构是软件系统的基本结构&#xff0c;包含其组件、组件之间的关系、组件设计与演进的规则&#xff0c;以及体现这些规则的基…

[应用推荐]Web Scraper——轻量数据爬取利器

对于日常的简单网页内容爬取&#xff0c;学习Python等投入太高&#xff0c;可以考虑使用这个Chrome工具。 以下为收集的具体信息&#xff0c;按需取用。 以下内容来自web ScraperWeb Scraper - The #1 web scraping extensionThe most popular web scraping extension. Start …

ARMday2

1~100累加 代码 .text .globl _start _start:mov r0, #1 fun:cmp r0,#100addls r1,r1,r0addls r0,r0,#1b fun .end运行结果

互联网Java工程师面试题·Elasticsearch 篇·第二弹

12、详细描述一下 Elasticsearch 索引文档的过程。 协调节点默认使用文档 ID 参与计算&#xff08;也支持通过 routing &#xff09;&#xff0c;以便为路由提供合适的分片。 shard hash(document_id) % (num_of_primary_shards) 1 、当分片所在的节点接收到来自协调节点…

API基础————包

什么是包&#xff0c;package实际上就是一个文件夹&#xff0c;便于程序员更好的管理维护自己的代码。它可以使得一个项目结构更加清晰明了。 Java也有20年历史了&#xff0c;这么多年有这么多程序员写了无数行代码&#xff0c;其中有大量重复的&#xff0c;为了更加便捷省时地…

Flv.js编译使用

Flv.js &#xff08;https://github.com/bilibili/flv.js&#xff09;是 HTML5 Flash 视频&#xff08;FLV&#xff09;播放器&#xff0c;纯原生 JavaScript 开发&#xff0c;没有用到 Flash。由 bilibili 网站开源。本文讲述其编译使用。 Flv.js目前最新版本是v1.6.2。在htt…

基于混合蛙跳优化的BP神经网络(分类应用) - 附代码

基于混合蛙跳优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码 文章目录 基于混合蛙跳优化的BP神经网络&#xff08;分类应用&#xff09; - 附代码1.鸢尾花iris数据介绍2.数据集整理3.混合蛙跳优化BP神经网络3.1 BP神经网络参数设置3.2 混合蛙跳算法应用 4.测试结果…

gitgitHub

在git中复制CtrlInsert、粘贴CtrlShif 一、用户名和邮箱的配置 查看用户名 &#xff1a;git config user.name 查看密码&#xff1a; git config user.password 查看邮箱&#xff1a;git config user.email 查看配置信息&#xff1a; $ git config --list 修改用户名 git co…

Java笔记七(封装,继承与多态)

封装 该露的露&#xff0c;该藏的藏 程序设计追求“高内聚&#xff0c;低耦合”。高内聚就是类的内部数据操作细节自己完成&#xff0c;不允许外部干涉&#xff1b;低耦合&#xff1a;仅暴露少量的方法给外部使用 封装&#xff08;数据的隐藏&#xff09; 通常&#xff0c;…