zoukankan      html  css  js  c++  java
  • linux搭建halo博客

    快速搭建

    linux安装halo官方文档:https://docs.halo.run/install/linux
    先去官网下载:https://dl.halo.run/release/
    也可以使用wget下载到服务器: wget https://dl.halo.run/release/halo-1.4.8.jar
    安装java环境:yum install java-11-openjdk -y
    启动halo:java -jar halo-1.4.8.jar
    访问默认的http://ip:8090即可进入安装引导界面,如果无法访问检测以下防火墙是否开启,如果开启了是否允许该端口被访问(比如阿里云就需要去控制台添加相应访问规则)

    注:如果启动时报错,那可能jdk版本不兼容,比如你用jdk1.8去启动halo-1.4.8.jar就会报错,我之前是之前yum安装的java-1.8.0-openjdk,就报错了,当时便有了以下思路,一用低一点版本的halo,如halo-1.4.6.jar去适配jdk1.8,二可以选择卸载原有jdk,安装更高版本的jdk,三使用docker搭建halo,与宿主机分离,不改变宿主机环境
    此处我选择了第二个方法,原因是软件用新不用旧,旧版本虽然稳定,但是存在漏洞的概率也更高(或者有的软件旧版本本就存在着一些漏洞),对于有的软件我们是“能用就行,绝不升级”的原则,但这个halo我们还是尽量用新版。直接yum remove java-1.8.0-openjdk,然后yum install java-11-openjdk -y,但是使用java -version还是显示1.8的,于是rpm -qa|grep jdk,找到1.8的jdk的包名使用rpm -e 完整包名进行卸载,此时再用java -version发现jdk版本是11了,也能正常启动halo了

    更高的安全性

    以下教程来自官方文档
    创建新用户和工作目录(如果你是以root身份运行halo服务那么跳过此步骤,如果想要服务器安全性更高可以按照以下步骤操作):

    useradd -m halo  //创建halo用户,-m在创建用户时创建其家目录
    usermod -aG wheel halo  //添加sudo权限,关于wheel用户组请自行百度
    passwd halo  //设置密码
    su halo  //切换到用户halo
    

    创建工作目录(这里选择的halo的家目录):

    mkdir ~/app && cd ~/app
    

    下载halo:

    wget https://dl.halo.run/release/halo-1.4.8.jar -O halo.jar
    

    下载示例配置文件(该文件需要放在~/.halo文件夹中):

    wget https://dl.halo.run/config/application-template.yaml -O ./application.yaml
    

    运行halo:

    cd ~/app && java -jar halo.jar
    

    我们还可以把后台路径改掉,在配置文件application.yaml中修改即可:

    作为服务运行

    如果是halo,执行exit退出到root用户
    依次执行:

    wget https://dl.halo.run/config/halo.service -O /etc/systemd/system/halo.service
    
    vim /etc/systemd/system/halo.service
    

    修改配置

    • YOUR_JAR_PATH:Halo 运行包的绝对路径,例如 /home/halo/app/halo.jar,注意:此路径不支持 ~ 符号。
    • USER:运行 Halo 的系统用户,如果有按照上方教程创建新的用户来运行 Halo,修改为你创建的用户名称即可。反之请删除 User=USER
    [Unit]
    Description=Halo Service
    Documentation=https://halo.run
    After=network-online.target
    Wants=network-online.target
    
    [Service]
    Type=simple
    User=USER
    ExecStart=/usr/bin/java -server -Xms256m -Xmx256m -jar YOUR_JAR_PATH
    ExecStop=/bin/kill -s QUIT $MAINPID
    Restart=always
    StandOutput=syslog
    
    StandError=inherit
    
    [Install]
    WantedBy=multi-user.target
    

    重新加载systemd:

    systemctl daemon-reload
    

    运行服务:

    systemctl start halo
    

    halo全站恢复

    此次实验将阿里云centos7的整站备份传到VMware的centos7中,
    解压将.halo文件夹覆盖,启动halo服务,完美移植,爽
    实验环境:
    centos7
    halo版本1.4.8
    java环境jdk11

    最后

    来看看本人Sakura主题的halo博客效果吧:http://www.sillage.wang/
    有什么问题多看官方文档,写得比较详细,此处就不搬运了:https://docs.halo.run/

    作者:
    除特别声明为原创博文外,均可转载,也欢迎转载,未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利,谢谢您的配合。
  • 相关阅读:
    Codeforces Round #275 (Div. 2) A. Counterexample【数论/最大公约数】
    2017年浙工大迎新赛热身赛 J Forever97与寄信 【数论/素数/Codeforces Round #382 (Div. 2) D. Taxes】
    2017年浙工大迎新赛热身赛 A 毕业设计选题 【结构体排序】
    2017年浙工大迎新赛热身赛 L cayun日常之赏月【易错特判】
    Codeforces Round #309 (Div. 2) A. Kyoya and Photobooks【*组合数学】
    【数论知识】能被2、3、4、5、6、7、8、9 等数整除的数的特征
    Codeforces Round #429 (Div. 2) A. Generous Kefa【hash/判断字符串是否有一种字符个数大于m】
    MPI Maelstrom---poj1502(最短路模板)
    Travel---hdu5441(并查集)
    Elven Postman---hdu5444(二叉树)
  • 原文地址:https://www.cnblogs.com/sillage/p/14887746.html
Copyright © 2011-2022 走看看