华为云云耀云服务器L实例评测|云耀云服务器L实例部署Bolo开源个人博客

2023-12-13 03:04:49

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

1.1 云耀云服务器L实例简介

云耀云服务器L实例是新一代的轻量应用云服务器,专为中小企业和开发者设计,提供便捷的开箱即用体验。该产品提供丰富且经过严格筛选的应用镜像,可一键部署应用,极大程度简化了客户在云端构建电商网站、Web应用、小程序、学习环境以及各类开发测试等任务的过程。

在这里插入图片描述

1.2 云耀云服务器L实例特点

  • 智能不卡顿:华为云擎天架构加持,软硬协同结合AI算法智能调度,为您提供优质性能。华为云全球存算一张网,数据传输时延比眨眼还短,满足游戏、音视频等低网络时延场景的高要求。

  • 价优随心用:超高性价比,超低门槛,敞开随心用。多种实例规格,平衡性能与成本。技术升级优化用云成本,普惠更多初创企业和开发者。

  • 上手更简单:多种镜像、资源组合一键下单。严选多款高品质镜像,经过华为云官方严格测试,覆盖七大场景,预置模板,快速搭建,安全可信。自动化编排,资源一键开通,业务分钟级上线。平滑学习曲线,向导式应用搭建,应用轻松启用。

  • 管理更省心:拓扑、资源、镜像可视化管理,业务架构透明化管理。贴心服务状态提醒,资源续退一键式操作,实现极简管理。资源负载、安全,使用率实时监控,保障服务永远在线。可选配丰富的安全服务,包括丰富的备份、主机安全等服务,提供最高等级的安全防护。

二、Bolo介绍

2.1 Bolo简介

Bolo是基于 Java 的一款开源博客引擎,它基于 Latke 框架搭建,响应速度快,占用资源小;Bolo 完全免费,代码全部开源且允许二次开发自用。如果你在寻找一款美观、全面但不复杂的个人博客引擎,Bolo博客是一个不错的选择!

2.2 Bolo特点

  • 完整的教程文档,完善的交流答疑
  • 精美皮肤常更新
  • 支持将文章自动备份至 GitHub 仓库
  • 超酷的数据统计表
  • 本地登录、评论,支持备案模式(隐藏登录、评论及搜索入口)
  • 支持 Tomcat、Docker 快速部署
  • 邮件提醒功能,不怕错过博客中的新评论,回复他人评论也会发邮件提醒他人
  • 强大的 Vditor 编辑器,支持 所见即所得、即时渲染、分屏预览 三种模式,额外支持通过 Lute_HTTP 渲染
  • 支持自定义图床(阿里云、又拍云、七牛云)
  • 轻型防火墙功能,阻止恶意访问,保证博客正常运行
  • 强大的 Markdown 编辑器(使用 Vditor)支持大纲、数学公式、脑图、图表、流程图、甘特图、时序图、五线谱、多媒体、语音阅读、标题锚点、代码高亮及复制、graphviz 渲染
  • 支持黑暗模式,随系统设置自动切换,保护视力
  • 看板娘+,在线更新海量看板娘资源
  • 如果你是 Solo 用户,还可将 Solo 的数据一键迁移到 Bolo;如果你对 Bolo 不满意,还可以一键迁回至 Solo
  • Server 酱推送功能,在微信上接收你的博客动态
  • 自动生成“我在 GitHub 上的开源项目”文章功能,让博客的访客更好地了解你的 GitHub 履历

三、本次实践介绍

3.1 本次实践简介

1.本次实践为个人测试学习环境,旨在快速部署应用,生产环境请谨慎;
2.本次实践环境为云耀云服务器L实例,使用的应用镜像为Portainer 2.18.4;
3.由于使用的应用镜像为Portainer,云服务器自动已部署好Docker环境;
4.在华为云云耀云服务器L实例上部署Bolo开源个人博客。

3.2 本次环境规划

服务器类别应用镜像内网IP地址Docker版本Portainer版本操作系统版本Bolo版本
云耀云服务器L实例Docker可视化Portainer192.168.0.16824.0.42.18.4Ubuntu 22.04.1 LTS稳定版V2.6

四、检查服务器环境

4.1 查看云耀云服务器L实例状态

本次实践前提是已购买华为云云耀云服务器L实例,检查当前云耀云服务器L实例状态处于正常运行中。

在这里插入图片描述

4.2 复制弹性公网IP地址

点击进入云耀云服务器L实例管理页面,复制其弹性公网IP地址,后面远程连接以及外网访问都要用上。

在这里插入图片描述

4.3 Xshell远程连接服务器

在Xshell工具中,填写服务器弹性公网IP地址、账号密码信息,ssh连接远程服务器。

在这里插入图片描述

4.4 检查操作系统版本

华为云耀云服务器L实例使用Portainer应用镜像时,使用的操作系统版本为Ubuntu 22.04.1 LTS。

root@hcss-ecs-f91c:~# cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

4.5 检查Docker环境

检查Docker版本,当前版本为24.0.4。

root@hcss-ecs-f91c:~# docker -v
Docker version 24.0.4, build 3713ee1

检查Docker服务状态,确保Docker服务正常运行。

root@hcss-ecs-f91c:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2023-10-02 15:33:45 CST; 20h ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 1340 (dockerd)
      Tasks: 92
     Memory: 57.6M
        CPU: 26.349s
     CGroup: /system.slice/docker.service

4.6 检查docker compose版本

检查docker compose版本,确保docker compose可以正常使用。

root@hcss-ecs-f91c:~# docker compose  version
Docker Compose version v2.19.1

五、部署Mysql数据库

5.1 下载Mysql镜像

在docker hub拉取Mysql镜像,容器镜像为mysql:5.7。

docker pull mysql:5.7

在这里插入图片描述

5.2 创建挂载目录

执行以下命令,创建Mysql容器的挂载目录。

mkdir -p /data/bolo/mysql

5.3 创建Mysql容器

执行以下命令,创建Mysql容器。

docker run -d --name bolo-mysql --restart always -e MYSQL_ROOT_PASSWORD=bolo -e MYSQL_DATABASE=solo -e MYSQL_USER=bolo -e MYSQL_PASSWORD=bolo -p 3306:3306  -v /data/bolo/mysql:/var/lib/mysql  mysql:5.7

在这里插入图片描述

5.4 检查Mysql容器状态

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

root@hcss-ecs-f91c:~/bolo-solo# docker ps
CONTAINER ID   IMAGE                                                 COMMAND                  CREATED          STATUS          PORTS      NAMES
d676994e69e0   mysql:5.7                                             "docker-entrypoint.s…"   30 seconds ago   Up 30 seconds   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp      bolo-mysql

5.5 设置Mysql用户权限

进入到Mysql容器内,给bolo用户授权。

docker exec -it bolo-mysql /bin/bash  # 进入mysql容器内
mysql -uroot -p        # 连接本地mysql数据库

在这里插入图片描述

给bolo用户进行授权。

GRANT ALL PRIVILEGES ON solo.* TO 'bolo'@'%' IDENTIFIED BY 'bolo';
FLUSH PRIVILEGES;

在这里插入图片描述

六、构建Bolo容器镜像

6.1 下载Bolo源码

在github拉取Bolo源码,如果github拉取失败,可以使用国内码云: https://gitee.com/AdlerED/bolo-solo。

git clone  https://github.com/adlered/bolo-solo

在这里插入图片描述

6.2 开始构建镜像

进入Bolo项目的根目录,查看目录内容。

root@hcss-ecs-f91c:~# cd bolo-solo/
root@hcss-ecs-f91c:~/bolo-solo# ls
bolo-solo.iml  Dockerfile  git  gulpfile.js  LICENSE  manifest.json  package.json  package-lock.json  pic  pom.xml  preview  README.md  src  ssh  yarn.lock

再进入到Bolo项目的根目录,构建Docker镜像,需要耐心等待构建完成。

docker build -t "bolo" .

在这里插入图片描述

6.3 查看Bolo镜像

查看本地Bolo镜像,确定本地Bolo镜像构建成功。

root@hcss-ecs-f91c:~/bolo-solo# docker images
REPOSITORY                                       TAG           IMAGE ID       CREATED         SIZE
bolo                                             latest        3cf2457afeb1   8 minutes ago   153MB

七、部署Bolo开源个人博客

7.1 创建Bolo容器

使用以下命令,创建Bolo容器,其中JDBC_URL的IP地址设置为华为云云耀云服务器L实例的内网IP地址192.168.0.168,–server_host更改为弹性公网IP地址。

docker run   -d -p 8280:8080 --env RUNTIME_DB="MYSQL" \
--name bolo  \
--restart always  \
--env JDBC_USERNAME="bolo" \
--env JDBC_PASSWORD="bolo" \
--env JDBC_DRIVER="com.mysql.cj.jdbc.Driver" \
--env JDBC_URL="jdbc:mysql://192.168.0.168:3306/solo?useUnicode=yes&characterEncoding=UTF-8&useSSL=false&serverTimezone=UTC" \
bolo --listen_port=8080 \
--server_scheme=http --server_host=弹性公网IP地址

在这里插入图片描述

1.JDBC_USERNAME : MySQL数据库用户名;
2.JDBC_PASSWORD :数据库密码;
3.JDBC_URL :192.168.0.168 为服务器的域名(如没有域名,填写IP地址);
4.server_host :修改为自己的域名(或IP地址),这里云耀云服务器L实例的弹性公网IP地址;
5. -p 8280:8080 和 --listen_port=8080为端口参数,可以自行修改。

注意:–server_host选项后面必须使用华为云云耀云服务器L实例的公网地址,本人第一次部署时使用的是其内网IP地址192.168.0.168,后面初始化设置完毕后会自动跳转到该内网IP地址,造成外网无法访问的问题。将其修改为华为云云耀云服务器L实例的弹性公网IP地址后,初始化完毕后跳转到弹性公网IP地址,访问正常。

7.2 查看容器状态

检查bolo相关容器状态,确保bolo容器正常运行。

root@hcss-ecs-f91c:~/bolo-solo# docker ps
CONTAINER ID   IMAGE                                                 COMMAND                  CREATED          STATUS          PORTS      NAMES
3560203c1ee1   bolo                                                  "java -cp WEB-INF/li…"   21 seconds ago   Up 20 seconds   0.0.0.0:8280->8080/tcp, :::8280->8080/tcp      bolo
d676994e69e0   mysql:5.7                                             "docker-entrypoint.s…"   2 minutes ago    Up 2 minutes    0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp      bolo-mysql

7.3 检查容器日志

检查bolo容器日志,确保bolo服务正常启动。

docker logs bolo

在这里插入图片描述

八、访问Bolo开源个人博客

8.1 放行安全组端口

进入华为云云耀云服务器L实例的安全组管理页面,在入方向放行8280端口。

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

8.2 Bolo的初始化设置

访问地址:http://弹性公网IP地址:8280/,如果无法访问,查看ufw防火墙是否关闭。

在这里插入图片描述

设置管理员账号和密码,点击“开始初始化”。

在这里插入图片描述

8.3 访问Bolo首页

初始化完毕后,自动跳转到Bolo首页。

在这里插入图片描述

九、在Bolo上发表博客

9.1 进入Bolo后台管理

点击首页的后台管理登录入口,输入管理员账号和密码,进入Bolo后台管理页面。

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

9.2 发布文章

点击发布文章模块,编辑文章内容,发表即可。

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

9.3 查看博客效果

访问bolo首页,点击发布的文章,查看文章内容。

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

文章来源:https://blog.csdn.net/jks212454/article/details/133514046
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。