华为云征文|构建个人博客管理系统 Ghost

2024-08-31 05:36

本文主要是介绍华为云征文|构建个人博客管理系统 Ghost,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

华为云征文|构建个人博客管理系统 Ghost

  • 一、Flexus云服务器X实例介绍
    • 1.1 云服务器介绍
    • 1.2 应用场景
    • 1.3 对比普通ECS
  • 二、Flexus云服务器X实例配置
    • 2.1 重置密码
    • 2.2 服务器连接
    • 2.3 安全组配置
  • 三、部署 Kodcloud
    • 3.1 Jellyfin 介绍
    • 3.2 Docker 环境搭建
    • 3.3 Jellyfin 部署
    • 3.4 Jellyfin 使用
  • 四、总结

一、Flexus云服务器X实例介绍

1.1 云服务器介绍

云服务器的重要意义主要体现在灵活性、弹性和成本效益。它们提供了根据需求即时调整计算资源的能力,节省了长期硬件采购和维护的成本,同时保障业务的稳定运行。通过云服务器,企业可以更高效地部署、扩展和管理应用程序,适应快速变化的市场需求,推动数字化转型,加速业务创新。

华为云下一代云服务器Flexus X实例焕新上线,新产品具备柔性算力,六倍性能,旗舰体验,覆盖高科技、零售、金融、游戏等行业大多数通用工作负载场景,从而帮您快速上云!

在这里插入图片描述

Flexus X实例通过和其他服务组合,具备计算、镜像安装、网络、存储、安全等能力,您可根据业务需要灵活配置各资源。

在这里插入图片描述
在这里插入图片描述

本次测评使用的规格是:4核12G-100G-3M规格的Flexus X实例基础模式

在这里插入图片描述

1.2 应用场景

Flexus云服务器X实例打造的柔性算力云服务器,可智能感知业务负载,适用于电商直播、企业建站、开发测试环境、游戏服务器、音视频服务等中低负载场景。

  • 电商直播:基于Flexus X实例搭建电商交易平台,可以从容面对电商市场瞬息万变对的业务压力变化。
  • 企业建站:面向博客、论坛,和企业门户等业务场景,帮助企业传播价值信息,促进信息共享和交流,支撑用户建设多功能的传播和交互平台。
  • 个人开发测试:开发者在开发、测试过程中需要的环境资源,可以选择从云上提供。基于Flexus云服务器X实例搭建开发测试环境,更加便利,成本更优。
  • 游戏服务器:适用于搭建游戏后台服务器,强大算力轻松应对千人同时在线,同时平滑扩容可快速应对服务器玩家数量上涨诉求,超强的网络加速能力提升用户体验。

1.3 对比普通ECS

项目Flexus应用服务器L实例Flexus云服务器X实例ECS
适用对象适用于业务负载要求相对较低,且期望即开即用、超快部署的中小企业和开发者。适用于中负载业务,且期望资源灵活选配的中小企业和开发者。适用于网站应用、企业电商、图形渲染、数据分析、高性能计算等高负载、全业务应用场景。
实例特点内置丰富的解决方案与镜像,零门槛快速搭建业务环境,轻松启动和管理业务灵活自定义规格、性能稳定强劲、按需灵活计费。支持灵活地选择所需的内存、CPU、带宽等配置,帮助您打造可靠、安全、灵活、高效的应用环境。

二、Flexus云服务器X实例配置

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即可)、协议端口信息(一般选择你项目需要暴露的端口即可),其他默认点击确定即可。安全组配置主要是暴露端口可以给外网访问。

在这里插入图片描述

如果还不清楚可以参考文档:安全组配置示例

三、部署 Kodcloud

3.1 Jellyfin 介绍

Jellyfin是一个自由软件媒体系统,让您控制管理和流媒体。它是专有Emby和Plex的替代方案,通过多个应用程序将媒体从专用服务器提供给最终用户设备。Jellyfin是Emby的3.5.2版本的派生版本,并移植到.NET Core框架,以支持完全的跨平台支持。

Jellyfin 使你能够收集、管理和串流你的媒体。在你的系统上运行 Jellyfin 服务器,就可以访问领先的免费软件娱乐系统,包括各种铃声和口哨声。

  • 电影:轻松浏览您收藏的全部电影,并欣赏精美的艺术作品。

  • 节目:观看您最喜爱的节目,这些节目按季节自动分类,随时可供狂欢。

  • 音乐:在家或外出时都能聆听音乐、艺术家和播放列表。

  • 实时电视和 DVR:观看电视并设置自动录制,扩展你的资料库。

  • 书籍:阅读书籍、漫画和杂志。

  • 照片:整理照片,与亲朋好友分享美好回忆。

  • 同步播放:远程共享电影之夜从未如此简单。

在这里插入图片描述

Jellyfin 的设计也很简约,无广告,在观影过程中不会有其他视频类应用的的开屏广告、暂停广告、弹框广告等。基于固定的带宽,无人为的限速,播放不卡顿,高清播放,不用VIP即可倍速播放。真正的可以建立个人专属的影音视频库,可以记录观影信息。如果视频文件包含meta信息,可以自动获取对应的影视信息。

  • 官网:https://jellyfin.org/
  • Github:https://github.com/jellyfin/jellyfin

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 Jellyfin 部署

在这里插入图片描述

  • 下载镜像

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

root@hcss-ecs-f632:~# docker pull jellyfin/jellyfin
Using default tag: latest
latest: Pulling from jellyfin/jellyfin
7dbc1adf280e: Already exists
fe8f721fbd98: Pull complete
72d8918d1ff1: Pull complete
7c27c084bf78: Pull complete
Digest: sha256:d39f8826c0e48b08770b735ab0342c9cb9fc08c59777f41080c76549526fd667
Status: Downloaded newer image for jellyfin/jellyfin:latest
docker.io/jellyfin/jellyfin:latest
  • 配置安全组

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

在这里插入图片描述

  • 启动服务

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

version: '3.5'
services:jellyfin:image: jellyfin/jellyfincontainer_name: jellyfinvolumes:- ./config:/config- ./cache:/cache- ./media:/media- ./media2:/media2:rorestart: unless-stoppedports:- "8096:8096"
  • volumes:映射容器内部文件路径到本地
  • ports:配置访问端口

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

root@hcss-ecs-f632:~/jellyfin# docker-compose up -d
Creating network "jellyfin_default" with the default driver
Creating jellyfin... done
  • 检查容器状态

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

root@hcss-ecs-f632:~/jellyfin# docker ps
CONTAINER ID   IMAGE                                    COMMAND                  CREATED       STATUS                   PORTS                                                 NAMES
4d2425b7b0be   jellyfin/jellyfin                        "/jellyfin/jellyfin"     2 hours ago   Up 9 minutes (healthy)   0.0.0.0:8096->8096/tcp, :::8096->8096/tcp             jellyfin
  • 访问地址

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

  • 访问结果

在这里插入图片描述

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

3.4 Jellyfin 使用

设置首选语言为汉语(简化字)

在这里插入图片描述

设置用户名和密码,作为管理员账户

在这里插入图片描述

设置你的媒体库,暂不设置

在这里插入图片描述

首选元数据语言,将语言设置为Chinese

在这里插入图片描述

设置远程访问,保持默认

在这里插入图片描述

完成 Jellyfin 初始化

在这里插入图片描述

登录:输入前面创建的用户名和密码

在这里插入图片描述

点击创建,添加媒体库

在这里插入图片描述

添加媒体库:选择内容类型,如电影;添加文件夹:下拉列表查看对应docker-compose中配置的数据卷对应的文件夹,可以继续创建子目录,如在media目录下创建movie目录:mkdir movie,其他配置保持默认

在这里插入图片描述

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

root@hcss-ecs-f632:~/jellyfin/media/movie# ls_AUXOUT_当我们回顾2019.mp4   _AUXOUT_牵起我的手.mp4  '[IKITA]关于我的加州梦 California Dreamin.mp4'  '[IKITA]自由是一场坠入_坠入城市边缘_坠入无尽的梦中.mp4'
  • movie即为电影视频文件目录

我们可以侧边栏的元数据中查看媒体资料管理器,查看文件路径下的文件信息

在这里插入图片描述

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

四、总结

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

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

Jellyfin 作为在线影音媒体系统,目前只有在自动扫描添加的文件时会出现服务器卡顿现象,扫描完成后,浏览信息和播放视频均很流畅,当前的华为云云耀云服务器L实例选配配置较低,此项目需要大的运行内存,所以需要适当增加配置,尤其是带宽,否则会出现无法访问的情况。

如果项目具有高访问量或需要传输大量数据(如图像、视频、文件下载等),将占用更多带宽。如果项目需要频繁地从服务器向客户端传输数据,例如实时更新或推送通知,可能会占用更多带宽。

这篇关于华为云征文|构建个人博客管理系统 Ghost的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1123028

相关文章

精准寻车+鸿蒙有礼特别版均已上线! 华为鸿蒙HarmonyOS 6负一屏新升级

《精准寻车+鸿蒙有礼特别版均已上线!华为鸿蒙HarmonyOS6负一屏新升级》不少朋友升级华为鸿蒙HarmonyOS6后,发现华为负一屏此次也新增了精准寻车功能,还为过往鸿蒙5.1及以上用户再度... 最近科技圈热议话题当属华为全新发布的Mate 80系列,这次不仅有全金属机身,第二代红枫影像和全新麒麟新品

故障定位快人一步! 华为交换机排障命令汇总

《故障定位快人一步!华为交换机排障命令汇总》在使用华为交换机进行故障排查时,首先需要了解交换机的当前状态,通过执行基础命令,可以迅速获取到交换机的系统信息、接口状态以及配置情况等关键数据,为后续的故... 目录基础系统诊断接口与链路诊断L2切换排障L3路由与转发高级调试与日志性能、安全与扩展IT人无数次实战

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

Docker多阶段镜像构建与缓存利用性能优化实践指南

《Docker多阶段镜像构建与缓存利用性能优化实践指南》这篇文章将从原理层面深入解析Docker多阶段构建与缓存机制,结合实际项目示例,说明如何有效利用构建缓存,组织镜像层次,最大化提升构建速度并减少... 目录一、技术背景与应用场景二、核心原理深入分析三、关键 dockerfile 解读3.1 Docke

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

Python利用PySpark和Kafka实现流处理引擎构建指南

《Python利用PySpark和Kafka实现流处理引擎构建指南》本文将深入解剖基于Python的实时处理黄金组合:Kafka(分布式消息队列)与PySpark(分布式计算引擎)的化学反应,并构建一... 目录引言:数据洪流时代的生存法则第一章 Kafka:数据世界的中央神经系统消息引擎核心设计哲学高吞吐

Springboot项目构建时各种依赖详细介绍与依赖关系说明详解

《Springboot项目构建时各种依赖详细介绍与依赖关系说明详解》SpringBoot通过spring-boot-dependencies统一依赖版本管理,spring-boot-starter-w... 目录一、spring-boot-dependencies1.简介2. 内容概览3.核心内容结构4.

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据

基于Spring Boot 的小区人脸识别与出入记录管理系统功能

《基于SpringBoot的小区人脸识别与出入记录管理系统功能》文章介绍基于SpringBoot框架与百度AI人脸识别API的小区出入管理系统,实现自动识别、记录及查询功能,涵盖技术选型、数据模型... 目录系统功能概述技术栈选择核心依赖配置数据模型设计出入记录实体类出入记录查询表单出入记录 VO 类(用于