关于前端:使用RailWay部署Halo-CMS博客系统

前言

  Halo是一款CMS博客零碎,能够说是轻量版的Wordpress,基于xxxx,巴拉巴拉,算了你们本人看官网文档吧。

  • 应用RailWay部署Halo CMS博客零碎

    • 官网部署
    • 为什么应用RailWay部署
    • 部署
    • 拜访
    • 其余
    • 总结

官网部署

  官网反对多种状况部署,linux、docker、腾讯云平台三种形式:

  • https://halo.run/#quickstart
  • https://docs.halo.run

为什么应用RailWay部署

  原本想着应用Vercel看能不能部署的,然而Vercel主动改名后同时也不再反对docker部署了,因而转战转变试试RailWay。

  通过官网文档晓得,RailWay反对多种部署形式,如Nodejs、Go、Docker、Java等等,详情可见 https://docs.railway.app/ ,那么既然反对Docker,Halo也反对docker部署,那天然RailWay必定是反对部署Halo的,在网上查了很多,也没有找到有人应用RailWay部署Halo的,因而总结一下写了这篇文章。为什么要应用RailWay部署呢?我试过以下几种形式,但都是有所弊病;

  • Nas + Docker + DDNS
    我原本在本人家里的Nas上应用了Docker部署了Halo,然而挪动的宽带不给公网IP,所以只能本人做内网穿透,用了frp和ddnsto,frp须要一个VPS做直达,尽管有个腾讯云的服务器,然而总感觉有些麻烦,ddnsto是买了一个https://www.ddnsto.com/ 的服务,然而这个绑定后时隔一段时间须要验证登陆能力拜访,因为须要应用halo提供的接口在小程序中获取数据,一旦这个工夫过了,小程序的接口就无奈调通了,所以这个形式pass了;
  • 腾讯云云平台
    Halo也反对在腾讯云云平台的部署,访问速度也不错,部署也很不便,云平台的费用也还ok,然而!!自定义的域名始终绑定不了,问了客服提了工单,依照他们说的仍然没法绑定…所以只能用云平台本人提供的域名。有人晓得怎么解决的话,能够通知我一声。。
  • VPS
    因为域名无奈绑定,所以临时先放弃了应用云平台的形式,于是又在VPS上装了docker,也可能失常的拜访,然而毕竟VPS会到期的,后续续费又比拟贵,所以只能试试,如果有便宜的VPS的话还是这种形式比拟好的;
  • RailWay
    RailWay部署,一键主动部署,反对自定义域名,收费https,每个月$5的收费额度,对于集体来说根本够用了;

部署

  • fork halo
    fork halo官网我的项目到本人的github中,Halo地址:https://github.com/halo-dev/halo
  • 在RailWay中导入曾经fork的Halo我的项目,抉择Deploy from Github repo,找到fork的我的项目,点击开始部署
  • 默认第一次部署不会报错,然而部署实现后会打不开,因为没有设置环境变量,没有配置dockerfile,所以是无法访问的。
  • 设置环境变量:关上我的项目在Variables中设置两个环境变量,一个是Dockerfile的门路,一个是拜访的端口,因为halo中的Dockerfile是放在根目录的,因而这里间接写Dockerfile就好了,PORT必须是8090,因为halo中的镜像曾经指定了端口
  • 设置好后,RailWay会主动进行部署,你会发现又呈现部署失败了,通过查看日志发现,是Dockerfile中须要获取build/libs上面的jar文件,因为官网说反对java间接部署,其实也是间接部署的jar包,所以这里lib下的其实也就是要部署的那个jar包;通过查看Halo的我的项目源码,发现我的项目中将build文件夹加了gitignore,所以这里必定找不到,我的解决方案是在仓库中下载了最新的jar包,并将其放在了build/libs文件夹上面,再将这个jar文件提交到github下面,就能够部署胜利了
  • 所以再换种思路,既然只须要Dockerfile和jar包,那是不是我仓库中间接只留着这两个文件就好了,事实证明,是ok的;
  • 再换种思路,Halo反对java部署,RailWay也反对Java部署,那是不是不必上传jar包了,间接部署halo的整个工程项目就好了,实践上也是能够的!然而我不会配置Java,所以大家能够自行尝试哈!

拜访

  部署实现之后,在settings中设置一个自定义的域名,配置一下CNAME,就能够拜访啦!比方我的拜访地址是: https://halo.wangboweb.site

其余

  • 为什么要应用halo?
      halo相似于轻量版的wordpress,我之前始终想本人做个博客治理后盾,然而始终各种事件导致只做了一半,halo的管理系统能够导入之前hexo上写好的markdown文件,且所有的标签和分类也会主动生成,评论零碎也反对的很好,最重要的一点是它提供了API拜访形式,之前在hexo中须要在小程序应用博客的数据的时候,须要在hexo中应用hexo-restful的那个包,并且也没有鉴权。halo中提供了对外的API接口,并且能够设置鉴权,只须要在设置-高级选项中开启即可。

      另外,联合开源我的项目https://gitee.com/fuzui/GBlog-wx,能够疾速的生成一个本人的小程序博客,几乎不便至极。

      halo下面的配置形式也比拟不便,尽管主题不是很多,然而像Wordpress一样,也能够本人去自定义,其实也还不错的!

总结

  至此,在RailWay上部署halo博客零碎就实现啦,又想法的敌人能够本人去试试啦!再联合上下面说的小程序我的项目,心愿大家可能做一个本人的博客零碎+博客小程序!

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理