华为云征文|构建个人博客管理系统 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 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

基于Python构建一个高效词汇表

《基于Python构建一个高效词汇表》在自然语言处理(NLP)领域,构建高效的词汇表是文本预处理的关键步骤,本文将解析一个使用Python实现的n-gram词频统计工具,感兴趣的可以了解下... 目录一、项目背景与目标1.1 技术需求1.2 核心技术栈二、核心代码解析2.1 数据处理函数2.2 数据处理流程

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

一文教你Java如何快速构建项目骨架

《一文教你Java如何快速构建项目骨架》在Java项目开发过程中,构建项目骨架是一项繁琐但又基础重要的工作,Java领域有许多代码生成工具可以帮助我们快速完成这一任务,下面就跟随小编一起来了解下... 目录一、代码生成工具概述常用 Java 代码生成工具简介代码生成工具的优势二、使用 MyBATis Gen

Python使用Reflex构建现代Web应用的完全指南

《Python使用Reflex构建现代Web应用的完全指南》这篇文章为大家深入介绍了Reflex框架的设计理念,技术特性,项目结构,核心API,实际开发流程以及与其他框架的对比和部署建议,感兴趣的小伙... 目录什么是 ReFlex?为什么选择 Reflex?安装与环境配置构建你的第一个应用核心概念解析组件

Python+wxPython构建图像编辑器

《Python+wxPython构建图像编辑器》图像编辑应用是学习GUI编程和图像处理的绝佳项目,本教程中,我们将使用wxPython,一个跨平台的PythonGUI工具包,构建一个简单的... 目录引言环境设置创建主窗口加载和显示图像实现绘制工具矩形绘制箭头绘制文字绘制临时绘制处理缩放和旋转缩放旋转保存编

Java中的StringBuilder之如何高效构建字符串

《Java中的StringBuilder之如何高效构建字符串》本文将深入浅出地介绍StringBuilder的使用方法、性能优势以及相关字符串处理技术,结合代码示例帮助读者更好地理解和应用,希望对大家... 目录关键点什么是 StringBuilder?为什么需要 StringBuilder?如何使用 St

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加