华为云征文|部署个人博客管理系统 Ghost

华为云征文|部署个人博客管理系统 Ghost

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

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

在这里插入图片描述

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

三、部署 Ghost

3.1 Ghost 介绍

Ghost 是一款功能强大的应用,可供专业出版商创建、分享内容并发展业务。它配备了现代工具,可用于创建网站、发布内容、发送简报以及向会员提供付费订阅。

  1. 简单的网站设计:用户可以完全控制网站和品牌的设计,轻松启动自定义网站,并根据品牌和风格调整设计设置。Ghost 提供大量自定义主题,用户可以选择使用,或者从头开始构建自己的设计。

  2. 高级创作者工具:Ghost 的编辑器专为专业人士设计,用户可以通过它在网络和电子邮件中发布内容。编辑器界面简洁,默认采用高级工作流程,支持富媒体和动态卡片,扩展了讲故事的可能性。

  3. 内置新闻通讯:Ghost 提供电子邮件简报功能,使出版商可以通过邮件将最新的帖子推送给受众,并根据用户偏好发送不同的简报。

  4. 会员与订阅:Ghost 简化了建立会员资格和订阅服务的过程,允许用户免费注册或购买付费订阅,支持每月和每年的高级套餐选择。

  5. 数据分析和管理:用户可以查看会员信息、注册及付费情况,以及了解哪些内容最受欢迎,通过详细的参与度分析优化内容策略。

在这里插入图片描述

Ghost 的设计很简约,相比较于臃肿不堪的 WordPress,功能和交互层面作出改进,采用实时架构 , 大大提高访问体验。非常简洁,Zip 安装包只有 1.7M, 部署完成之后在 30M 之内,运行效率比 WordPress 高上一个数量级。专注于博客内容本身,而不需要用户去关心博客平台的种种问题。采用了 Markdown 编辑器 , 有着非常棒的写字体验。目前不支持官方的中文语言适配,可能有点不习惯功能界面,但是记录博客文章不影响体验。

  • 官网:https://ghost.org/
  • Github:https://github.com/tryghost/ghost

3.2 Docker 环境搭建

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

服务器类别系统镜像内网IP地址Docker版本操作系统版本
Flexus云服务器X实例Ubuntu192.168.0.16827.2.0Ubuntu 22.04.4 LTS

使用apt-get命令安装docker及其配置

# 安装必要工具包
$ sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg-agent \software-properties-common# 添加Docker GPG秘钥
$ sudo curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -# 配置仓库源
$ sudo add-apt-repository \"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \$(lsb_release -cs) \stable"	# 更新apt包索引
$ sudo apt-get update# 安装docker
$ sudo apt-get install docker-ce docker-ce-cli containerd.io# 添加docker镜像源
$ sudo vim /etc/docker/daemon.json{"registry-mirrors": ["https://ustc-edu-cn.mirror.aliyuncs.com/","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn","https://ccr.ccs.tencentyun.com/","https://docker.m.daocloud.io/","https://dockerproxy.com",]
}
# 重启
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

测试docker安装是否成功

root@flexusx-c6b3:~# docker -v
Docker version 27.2.0, build 3ab4256```

检查docker服务状态

root@flexusx-c6b3:~# systemctl status docker
* docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2024-08-30 15:53:45 CST; 17h ago
TriggeredBy: * docker.socketDocs: https://docs.docker.comMain PID: 24912 (dockerd)Tasks: 13Memory: 24.7MCPU: 3.778sCGroup: /system.slice/docker.service`-24912 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

检查docker compose版本

root@flexusx-c6b3:~# docker compose version
Docker Compose version v2.29.2

3.3 Ghost 部署

  • 下载镜像

从 docker hub 拉取 Ghost 镜像,地址:https://hub.docker.com/_/ghost/

root@flexusx-c6b3:~# docker pull ghost:5-alpine
Pulling ghost (ghost:5-alpine)...
5-alpine: Pulling from library/ghost
46b060cc2620: Pull complete
18bfd1a7f5d0: Pull complete
48f16a148263: Pull complete
5c30aa900b09: Pull complete
c383aac6316f: Pull complete
a148ddbaf69a: Pull complete
22052d953230: Pull complete
e10dfa524d67: Pull complete
76c3f3524e5f: Pull complete
4f4fb700ef54: Pull complete
1e7a84be4a03: Pull complete
Digest: sha256:57867f74dff5919f3d1d41c83b4f1d34663cea981260176ed57bb6e1e0252569
Status: Downloaded newer image for ghost:5-alpine
  • 配置安全组

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

在这里插入图片描述

  • 启动服务

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

version: '3.1'services:ghost:image: ghost:5-alpinerestart: alwaysports:- 2368:2368environment:# see https://ghost.org/docs/config/#configuration-optionsdatabase__client: mysqldatabase__connection__host: dbdatabase__connection__user: rootdatabase__connection__password: exampledatabase__connection__database: ghost# this url value is just an example, and is likely wrong for your environment!url: http://localhost:2368# contrary to the default mentioned in the linked documentation, this image defaults to NODE_ENV=production (so development mode needs to be explicitly specified if desired)#NODE_ENV: developmentvolumes:- ghost:/var/lib/ghost/contentdb:image: mysql:8.0restart: alwaysenvironment:MYSQL_ROOT_PASSWORD: examplevolumes:- db:/var/lib/mysqlvolumes:ghost:db:
  • volumes:映射容器内部文件路径到本地
  • ports:配置访问端口

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

root@flexusx-c6b3:~/ghost# docker-compose up -d
Creating network "ghost_default" with the default driver
Creating ghost_ghost_1 ... done
Creating ghost_db_1 ... done
  • 检查容器状态

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

root@flexusx-c6b3:~/ghost# docker ps
CONTAINER ID   IMAGE                                    COMMAND                  CREATED       STATUS                   PORTS                                                 NAMES
02a8a500ee6c   ghost:5-alpine                       "docker-entrypoint.s…"   11 hours ago   Up 11 hours   0.0.0.0:2368->2368/tcp, :::2368->2368/tcp   ghost_ghost_1
58fcd00aa3a3   mysql:8.0                            "docker-entrypoint.s…"   11 hours ago   Up 11 hours   3306/tcp, 33060/tcp                         ghost_db_1
  • 访问地址

内网:http://localhost:2368/ghost
外网:http://公网IP:2368/ghost

  • 访问结果

在这里插入图片描述

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

3.4 Ghost 使用

创建管理员账户:输出网站标题、管理员名字、邮件地址和密码(第一个注册的用户即为管理员),完成注册进入主界面

在这里插入图片描述

按照引导页指示,下一步可以自定义网站主题,可以对主题色、Logo、网站名称和字体等参数调整,修改完成后右上角View site 可以直接预览,使用的网址是:http://localhost:2368/

在这里插入图片描述

右下角还有个Change Theme,可以查看更多主题选择,总有一款适合你

在这里插入图片描述

接下来进入文章编辑模块,可以添加封面图、文章标题和文章内容,右侧栏展开可以进行发布设置

在这里插入图片描述

文章内容支持markdown格式编辑,支持多种富文本:图片、视频、音频、网页等

在这里插入图片描述
随便写点,内容发布第一篇博客文章
在这里插入图片描述
编辑完成后点击发布,先预览完成后再确定发布
在这里插入图片描述

成员管理页面,可以先测试添加自己作为成员
在这里插入图片描述

完成引导任务的最后一步,分享网站

在这里插入图片描述

回到首页面板,会有数据分析图标,可以一目了然展示成员增减、发布文章等信息

在这里插入图片描述

左侧菜单栏包含主要功能点:数据面板、预览网站、探索优秀的Ghost站点、编辑帖子、帖子草稿、计划发布、已发布、页面管理、标签管理、成员管理等

在这里插入图片描述

设置功能中含有丰富的配置

在这里插入图片描述

还可以编辑个人的信息,如头像、坐标、个人网站、座右铭等信息,在这里还可以修改密码

在这里插入图片描述

Ghost 作为个人博客管理系统的个人使用就是上面的这些了,更多的功能和配置就需要自行探索了。

四、总结

Flexus云服务器X实例是面向博客、论坛,和企业门户等业务场景,帮助企业传播价值信息,促进信息共享和交流,支撑用户建设多功能的传播和交互平台。而且Flexus云服务器X实例使用门槛较低,如果您是正在了解云计算服务的入门用户,或是需要在服务器中部署简单应用的个人开发者、中小企业,比如部署一些轻量级的有趣的项目,那么推荐您选择Flexus云服务器X实例

此次使用的Flexus X实例配置还是很高的4核12G-100G-3M规格基础模式,部署的 Ghost 使用体验很完美,几乎没有任何卡顿和延迟,加载进度超快,使用free -h查看内存占用情况也很低。Flexus X实例的弹性和可靠性可以根据需求随时扩展资源,确保博客的顺畅运行,为使用者提供无忧的博客创作和分享体验。

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

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

相关文章

《数字信号处理》学习01-离散时间信号与序列的卷积和运算

目录 一,信号 二,序列的运算 1,卷积和 2,matlab实现 相关的电子书籍请到这篇文章所在的专栏,并通过夸克网盘链接下载。 很多简单的知识点我就不再赘述了,接下来就着重记录我学习过程中遇到的较难理…

Vue——day07之条件渲染、列表渲染以及监测数据

目录 1.template标签 2.条件渲染 3.列表渲染 4.v-for中的key的作用以及原理 5.列表过滤 placeholder 前端空字符串 使用数据监视watch实现 使用计算属性实现 6.列表排序 7.Vue更新数据检测失败 原因 总结 1.template标签 template标签是Vue.js中的一个特殊元素&am…

新型蜜罐有哪些?未来方向如何?

前言:技术发展为时代带来变革,同时技术创新性对蜜罐产生推动力。 一、新型蜜罐的诞生 技术发展为时代带来变革,同时技术创新性对蜜罐产生推动力,通过借鉴不同技术思想、方法,与其它技术结合形成优势互补,…

MC药水酿造

药水酿造(Brewing)是在酿造台中往水瓶里加入各种材料而制作药水、喷溅药水和滞留药水的过程。 将1-3个水瓶或药水放入酿造台界面底部的药水槽中,将材料放入顶部的材料槽中,再在燃料槽里放置烈焰粉,便可开始酿造。 药水的酿造一般从水瓶开始,水瓶可以用玻璃瓶从水源或

探讨抗晃电应用技术在煤化工生产中的运用

摘要:当前,电力供应面临的压力日益增大,用户群体的多样性也日益复杂。在电网运行中,电压波动(晃电)现象频繁发生。研究指出,电压波动的原因多种多样,包括自然因素、设备故障以及人为…

EXO项目StandardNode;max_generate_tokens;buffered_token_output;is_finished;

目录 StandardNode max_generate_tokens buffered_token_output 构造函数参数 类属性 总结 is_finished max_generate_tokens self.buffered_token_output StandardNode _process_tensor result是一个np.ndarray ,result.size == 1是什么意思 StandardNode max_g…

kaggle平台free使用GPU

1、注册 请保证在【科学上网】条件下进入如下操作,只有在注册账户和手机号验证时需要。 step1:注册账户 进入kaggle官网:https://www.kaggle.com/,点击右上角【Register】进入注册页面 最好选择使用邮箱注册(&#…

【例003】利用MATLAB绘制有趣平面图形

题目: 用 ezplot 画出由方程 sin ⁡ ( x 2 m y 2 1000 ) cos ⁡ ( x y ) \sin(x^2\frac{my^2}{1000})\cos(xy) sin(x21000my2​)cos(xy) 确定隐函数的图形。 求解: 我们分别取m为100,1000,10000不同的值,绘制不同情况下的图…

3.1 线性结构

令序列X、Y、Z的每个元素按顺序进栈,且每个元素进栈.出栈各一次,则不可能得到出栈序列( )。 A. XYZ B. XZY C. ZXY D. YZX 正确答案是 C。 解析 ZXY不可能得到这个序列,因为当Z最先出栈,说明X、Y已经入栈&a…

MySQL-进阶篇-锁(全局锁、表级锁、行级锁)

文章目录 1. 锁概述2. 全局锁2.1 介绍2.2 数据备份2.3 使用全局锁造成的问题 3. 表级锁3.1 表锁3.1.1 语法3.1.2 读锁3.1.3 写锁3.1.4 读锁和写锁的区别 3.2 元数据锁(Meta Data Lock,MDL)3.3 意向锁3.3.1 案例引入3.3.2 意向锁的分类 4. 行级…

推荐使用阿贝云免费云服务器、免费虚拟主机

官网地址:https://www.abeiyun.com 阿贝云的免费云服务器简直是我在互联网世界里的一大惊喜发现! 首先,它的性能表现十分出色。服务器的响应速度超快,无论是访问网站还是运行应用,都能迅速给出反馈,几乎没…

蒙特卡罗方法算π

蒙特卡罗法就是在一块区域里撒随机点&#xff0c;看落在指定区域的点数 基于以下关系式&#xff0c;可以计算π&#xff0c;MATLAB代码如下 N10^7; xunifrnd(0,1,[1,N]); yunifrnd(0,1,[1,N]); frequencysum(y<1./(1x.^2)); area4*frequency/N

day-45 全排列 II

思路 与上一题思路相同&#xff0c;代码也基本一致&#xff0c;只是需要全排列不重复 解题过程 可以利用Arrays.sort()函数将nums数组进行排序&#xff0c;这样相同的全排列数字的位置也会相同&#xff0c;可以利用List的contains()函数进行判断&#xff0c;如果不重复则加入答…

Java面试自我介绍

持续更新中 模块序号目录链接前言介绍1前言地址2介绍地址基础知识3计算机网络地址4操作系统地址5Java基础地址6Java并发地址7Java虚拟机地址中间件8Mysql地址9Redis地址10Elasticsearch地址11RabbitMQ地址12RocketMQ地址框架13分布式系统地址14MyBatis地址15Dubbo地址16Spring地…

【fastapi】fastapi的hello world

新建这样的目录结构 main.py的代码如下 from fastapi import FastAPI from fastapi.templating import Jinja2Templatesapp FastAPI()# 初始化 Jinja2 模板引擎 templates Jinja2Templates(directory"templates")app.get("/") async def home():contex…

网站建设完成后, 做seo必须知道的专业知识之--网络爬虫

网络爬虫&#xff0c;也称为网络蜘蛛或网络机器人&#xff0c;是一种能够自动浏览和采集互联网信息的程序。在大数据时代&#xff0c;网络爬虫技术在信息采集领域发挥着重要作用&#xff0c;通过自动化方式高效获取数据&#xff0c;广泛应用于搜索引擎、数据分析、金融数据采集…

海外新闻稿发布:企业如何充分利用数字化媒体进行

在全球数字化进程加速的时代&#xff0c;企业要在激烈的国际市场中脱颖而出&#xff0c;利用数字化媒体进行海外新闻稿发布是一个不可或缺的战略。精确的策略和有效的执行能够帮助企业获得更高的曝光度和市场份额。以下将从多个角度探讨如何充分利用数字化媒体进行海外新闻稿发…

[vue] jszip html-docx-js file-saver 图片,纯文本 ,打包压缩,下载跨域问题

npm install jszip file-saverimport JSZip from jszip; import FileSaver from file-saver;JSZip 创建JSZip实例&#xff1a; const zip new JSZip();创建文件&#xff1a;支持导出纯文本 zip.file("hello.txt", "Hello World\n");创建文件夹&#xf…

pm2 + linux + nginx

pm2 pm2是一个用于管理node项目的工具 前言 有如下两个文件 index.js const express require("express"); const app express(); const port 9999;app.get("/index", (req, res) > {res.json({code:200,msg:"songzx001"}) });app.lis…

Web3常见概念

Layer0 到 Layer3 的对比差异 层级定义主要功能举例Layer0基础设施层 提供区块链底层技术和基础设施 Avalanche、Cosmos、Horizen、PolkadotLayer1区块链层提供主要区块链协议和功能&#xff0c;处理交易和智能合约以太坊、Polkadot、EOSLayer2协议增强层优化交易速度和费用&a…