电信天翼云搭建Halo个人博客

1.购买服务器

学生党错过双十一各大云厂商搞活动,想在趁着年末各大云厂商搞活动租个一年的服务器,浏览阿里云、腾讯云、百度智能云、华为云、七牛云、天翼云等各大网站后,发现电信天翼云年末搞活动,于是决定入手一波天翼云服务器。

天翼云地址

天翼云主机配置图:

从活动页面看活动力度还是挺大的,本着租台服务器既能满足搭建博客、大数据组件和符合预算的要求就选择了4核8G的服务器。谁能想着一时冲动带宽想都没想就选择1M带宽,实际中1Mbit带宽实际速度128KB/S,Bit不是Byte。可谓是主机空有一身本领无奈舞台太小,带宽太小完全限制了主机的性能。事后也是后悔不已,尝试升级带宽无奈升级带宽费用远远高于搞活动中带宽的费用。活动中每多1Mbit带宽也就多20元,要真正发挥主机的性能应该至少5Mbit以上。

买完服务器支付完后,就是拿到主机的IP和密码远程登陆了。天翼云的操作不太人性化,找服务器都花了半天。它需要根据你买的服务器所属的不同区域切换到对应的区域才能看到对应的服务器,对于这个多余的设计不太清楚天翼云背后设计的逻辑是什么,这个对用户来说实在太麻烦了。而且每次找服务器都需要重新切换到对应的区,不是说你每次重新登陆后它会默认为你经常使用服务器的区。比如我买的服务器属于南京3区,每次登陆后切换到控制台,这个服务器的区总是默认为兰州2,说实话我很怀疑设计这控制台的哥们老家是不兰州的。总的来说,这个设计真的很麻烦。问过客户经理,回答是怕统一操作页面导致客户主机太多续费或者开通开错。希望之后改过来吧!

控制台界面主机信息:

首次登陆可以点击右下角更多,然后点击重置密码。注意的是搞活动的主机天翼云官方是不同意退订的,不过可以考虑变配。拿到公网IP后,就可以使用远程登陆工具ssh登陆,比如Xshell7、向日葵、MobaXterm等工具登陆。MobaXterm是一款集万千于一身的免费全能型终端神器,功能十分强大,内置SFTP、VNC、FTP、FTP等功能。用过之后真的香。

2.安装Docker、从Docker安装Halo、MySQL

Docker的安装教程可参考官方教程:docker官方Ubuntu安装教程

2.1安装Halo

Halo是一款由Java开发的现代化的博客/CMS系统,博客满足基本的博客功能,并且能够安装不同的主题。搭建个人博客有许多种办法,比如选择镜像的时候直接选择WordPress镜像、利用GitHub搭建Hexo博客。个人搭建的初衷就是为了学习Springboot项目。安装教程官方有非常详细的文档,这里主要还是搬运一些过程,并且也记录一些碰到的坑。

2.1.1创建halo工作目录
mkdir ~/.halo && cd ~/.halo
2.1.2下载示例文件并配置工作目录
wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
2.1.3编辑并且配置application.yaml

因为官方配置文件种默认使用的是H2数据库,而本次使用的是MySQL8.0数据库,因而需要对yaml文件进行更改,将Spring的数据源配置成为MySQL.

server:port: 8090# Response data gzip.compression:enabled: false
spring:datasource:# H2 database configuration.#driver-class-name: org.h2.Driver#url: jdbc:h2:file:~/.halo/db/halo#username: admin#password: 123456# MySQL database configuration.driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/halodb?characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&autoReconnect=true&failOverReadOnly=false&maxReconnects=10username: rootpassword: 你的密码# H2 database console configuration.h2:console:settings:web-allow-others: falsepath: /h2-consoleenabled: falsehalo:# Your admin client path is https://your-domain/{admin-path}admin-path: admin# memory or levelcache: memory
2.1.4查询和拉去最新的halo版本
docker search halo

查询halo结果结果:

拉去halo版本结果:

运行之时最小版本为halo:1.4.13,写博客当天已经更新到1.4.14。

docker pull halohub/halo:1.4.13

安装成功后结果如下图所示:

2.2安装MySQL8.0

2.2.1 docker拉去MySQL

官方默认的MySQL需要5.7+以上版本

docker pull MySQL:8.0
2.2.2在本地创建MySQL的映射目录
mkdir -p /root/mysql/data /root/mysql/logs /root/mysql/conf
2.2.3创建MySQL的配置文件
touch my.cnf
2.2.4创建容器,将数据、日志、配置文件、端口映射到本地
docker run -p 3306:3306 --name mysql -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/logs:/logs -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=你的密码 -d mysql:8.0
2.2.5运行MySQL
docker start mysql

查看运行结果:

docker ps

2.2.6进入MySQL创建表

进入MySQLbash指令

docker exect -it mysql /bin/bash

输入密码进入MySQL:

mysql -uroot -p123456

按照官方文档配置文件创建表

create database halodb character set utf8mb4 collate utf8mb4_bin;

3.从控制台配置安全组协议

Halo博客的默认端口是8090,要从外部访问需要控制台配置安全组协议,打开Ipv4、Ipv6的8090端口,不然外界无法访问。

从控制台进入云主机的配置页面:

安全组协议配置:

注意点:没有备案的话,默认是无法访问服务器的80、8080、443端口

4.安装Halo

4.1从docker启动halo
docker start halo
4.2镜像执行结果
docke ps -a

执行结果:

通过http://IP:8090访问结果显示:服务器拒绝访问

4.3解决办法

4.3.1疑问
  1. 安全组协议配置不对

    重新配置安全组协议

  2. halo的配置文件不对

    仔细检查application.yaml配置文件

  3. 防火墙设置不对

    启动防火墙,允许访问端口8090

  4. 服务器有问题(可能性少)

4.3.2检查spring.log日志

log出错情况:

基本确认主要是连接不上数据库所造成的问题,于是按照报错的百度。

对于此类错误主要解决办法可参考一下连接:

  1. 通过参数配置增大连接超时时间wait_timeout的值
  2. 设置超时连接

按照以上方法问题依然没有解决。

尝试办法:

于是想会不会是因为数据库时间和docker内时间不同步造成了。然后按照网上方法修改数据库内部和Docker内部的时间为一致。重新启动Halo问题已让没有解决,还是报错。

和同学讨论得知可能是因为MySQL和Halo同时部署在Docker种,两个容器相互隔离,有可能Halo镜像本身就带MySQL数据库,因而Halo博客应用种设置的数据库连接IP地址设置为127.0.0.1:3306可能无法映射到实际主机的数据库,因而无法连接上数据库。但是从官方文档中得知Halo本身数据是不带有MySQL数据库的,这个需要自己另外安装。基于这个假设将application.yaml中的数据地址改为主机的IP地址,同时去天翼云控制台配置安全组协议打开3306端口。同时防火墙中允许访问3306端口(这样可能会有安全风险)。重新启动halo应用…

docker restart halo

spring.log运行日志如下:

打开http://ip:8090直接进入安装界面,按照引导填写网站相关信息,然后进入后台管理页面。

前台页面:

后台页面:

进入后台页面可以根据自己设置相关的博客主题,同时发布自己的博客文章,博客支持markdown文件导入。

博客搭建成功!!!

4.4不足之处

Picgo+gitee做图床对于大图片支持还不是太好!!!

年末,备案过于复杂,准备等春节过后再去备案!!!

结束

对于文中出现的不足之处,还请大佬指正!!!

前台页面:

[外链图片转存中…(img-CjckBeYW-1638793430307)]

后台页面:

进入后台页面可以根据自己设置相关的博客主题,同时发布自己的博客文章,博客支持markdown文件导入。

[外链图片转存中…(img-2vhGCz5o-1638793430308)]

博客搭建成功!!!

4.4不足之处

Picgo+gitee做图床对于大图片支持还不是太好!!!

年末,备案过于复杂,准备等春节过后再去备案!!!

结束

对于文中出现的不足之处,还请大佬指正!!!

电信天翼云搭建Halo博客相关推荐

  1. 阿里云搭建个人博客(workpress)

    阿里云搭建个人博客,此篇文章介绍的搭建的博客为workpress,在阿里云的官网上也有介绍怎样搭建workpress的详细教程,但此篇文章介绍的是如何通过Docker来搭建workpress,了解过D ...

  2. 腾讯云搭建hexo博客

    title: 腾讯云搭建hexo博客 tags: hexo,腾讯云 文章目录 title: 腾讯云搭建hexo博客 tags: hexo,腾讯云 @[toc] 1. 腾讯云 学生认证购买 重置密码和网 ...

  3. 云服务上搭建halo博客

    废话不多说,直接上教程 想要了解更多有关halo博客的信息请访问官网:https://halo.run/ 本教程以 CentOS 7.x 为例,配置并运行 Halo,其他 Linux 发行版大同小异. ...

  4. 阿里云服务器搭建halo博客

    环境准备 1.安装jdk11 目前运行 Halo 的最低依赖要求为 JRE 11,因此先安装jdk11 # 1. 安装JDK [root@centos ~]#sudo yum install java ...

  5. 基于hexo和aws云搭建个人博客,0基础0费用,有点豪横(2W字超详细图文教程)

    这是篇概述文章,详细参考Hexo建站专栏 最近几个月一直在整理之前的技术笔记,目前虽在体系上还尚有欠缺,但内容方面整理的七七八八了,这些内容一部分记录在了云笔记中另一部分记录在了博客上.于是决定搭建一 ...

  6. 记服务器搭建 halo 博客被 SSH 爆破登录

    前端时间搭建了个 halo 博客,为了图省事干脆创建了个 halo 用户,密码也是 halo. 这下完蛋了,被爆破了,还是用了代理的.吓得我赶紧找服务器的木马在哪里. 咨询大佬们看看日志,histor ...

  7. 使用阿里云搭建个人博客

    此文章是介绍使用阿里云服务器 + wordpress搭建属于自己的个人博客.实验环境: 阿里云服务器+centos7+bt面板+wordpress 文章目录 1.购买阿里云服务器 1.登录阿里云 2. ...

  8. 使用阿里云搭建WordPress博客

    1.新手如何用阿里云服务器搭建一个WordPress博客? https://www.jianshu.com/p/556d2e5c818b 2.阿里云服务器ping不通解决办法(云服务器搭建完环境访问不 ...

  9. 如何使用Docker搭建Halo博客平台,超简单的操作,小白也会

    Halo [ˈheɪloʊ],一款现代化的开源博客/CMS系统,值得一试 前 言 拥有一个自己的博客网站,上传自己的经验文章,或者可以把它作为备忘录.日记,想想是不是很酷✨ 能做博客的软件平台有很多, ...

最新文章

  1. 机器学习——决策树学习
  2. centos-安装python3-pip3
  3. 公众号php空间是啥意思,什么是“希尔伯特空间”?
  4. 发那科机器人点位编辑_FANUC机器人:参考位置功能介绍与设定方法
  5. Brute Force_medium
  6. 排版小知识 1.针对某个对象对齐
  7. 引用 java的一些基本概念
  8. 【实习日记】Linux-VM15-Ubuntu18.04 + 运行selenium实现文件下载
  9. 【科研工具】【MikTex】MikTex安装和使用
  10. python批量下载微博贴评论图片
  11. 分布式学习(7)etcd@3@ API v3 gRPC_事务,租约
  12. 快充协议诱骗芯片大全:XSQ10支持9V12V15V20V
  13. LoRa 凭什么传的远、信噪比高、误码率低?
  14. 设计模式-责任型模式(责任链模式)
  15. 无线网络-LTE (01) LTE Overview
  16. 影评之火影忍者博人传
  17. C语言物流信息管理系统实践,[源码和文档分享]基于C语言的物流配送管理信息系统...
  18. 用Spring Boot Admin来监控我们的微服务
  19. 西雅图Oracle公寓租赁,西雅图Seattle租房攻略
  20. python|211129

热门文章

  1. 无数据 无网络view
  2. 网页如何防篡改?可以选择快卫士
  3. 微信小程序—WXML模板语法
  4. 微信公众号:开发者工具下载、安装、使用
  5. 多态的概念,多态的原理,多态解决什么问题
  6. 计算机 dc代表什么意思,dc和ac代表什么意思
  7. 线程同步的几种实现方法
  8. 安德玛交互式体验旗舰店杭州开业;因美纳新一代基因测序仪在华上市;苏伊士集团扩大在华业务布局 | 美通企业周刊...
  9. Idea创建一个java项目
  10. 【C++】C/C++面试之17道经典编程题目分析