使用halo部署这个网站

123

参考资料:
halo网站 https://halo.run/
halo文档 https://docs.halo.run/
halo_github https://github.com/halo-dev/halo

1. 配置网站,ssh连接云服务器操作

# https://docs.docker.com/engine/install/debian/
# 跟随教程安装 docker engine
# 命令太多我这里就不复制了

# https://docs.docker.com/compose/install/linux/#install-using-the-repository
# 跟随教程安装 docker compose

# 输入以下命令,有输出就说明安装好了
docker compose version 
# Docker Compose version v2.17.2 # 于20230404安装

# 设置docker-compose.yaml
cd /var/www/ccgg.fun
sudo vim docker-compose.yaml
# https://docs.halo.run/getting-started/install/docker-compose
# 按以上链接内的内容填写docker-compose.yaml
# yaml文件中要修改的内容也在上面的链接中,就是设置管理员账号,密码,数据库密码,及外部访问地址

# 设置反向代理
# 还是按以上链接内写的,设置nginx
cd /etc/nginx/sites-enabled
sudo vim ccgg.fun.conf

# 填写完后使用certbot添加ssl证书
sudo certbot --nginx

# 开启docker
cd /var/www/ccgg.fun
sudo docker compose up -d
# 这时已经可以通过域名访问网站了

# 关闭docker,即关闭网站
cd /var/www/ccgg.fun
sudo docker compose down

2. 备份网站

# 就是备份整个文件夹
cp -r /var/www/ccgg.fun ~ #复制整个网站到自己的家目录

# 或者直接打包整个文件夹,然后自己找地方保存
sudo zip -r ccgg.fun.zip ccgg.fun

# 恢复的时候,直接解压好后,在解压后的目录下,开启docker即可
sudo docker compose up -d

3. 后台管理

使用域名/console的链接进入后台,登陆管理员账户后,就可以进行一些写文章,设置主题,配置网站名称,添加用户的操作了。

4. 配置markdown编辑器

下载安装bytemd这个halo插件,实测比另一个stackedit好用。stackedit在代码块里会有莫名其妙多出来的空格。

插件下载地址 https://github.com/halo-sigs/awesome-halo

5. halo更新

5.1 小更新(2.4.1----2.4.2)

参考:https://docs.halo.run/getting-started/install/docker-compose

  1. 停止dockersudo docker compose down
  2. 备份旧文件夹sudo cp -r ccgg.fun ccgg.fun.archive
  3. 修改docker-compose.yaml中配置的镜像版本,小版本改动,如2.4.1到2.4.2,都不用改,因为此时这个文件里都是2.4sudo vim docker-compose.yaml
  4. 比较特殊的一步,pull,之前部署时没用过sudo docker compose pull halo
  5. 运行sudo docker compose up -d

5.2 较大更新(2.4.2----2.10.2)

# 备份就不说了
sudo docker compose down
sudo vim docker-compose.yaml #修改2.4为2.10
sudo docker compose up -d #不需要pull,直接这一步即可

6. halo内存占用

服务器有限的内存需要先紧着实验室网站的数据可视化用,因此压缩halo占用的内存

sudo docker stats
#v2.4.2
CONTAINER ID   NAME      CPU %     MEM USAGE / LIMIT     MEM %     NET I/O          BLOCK I/O         PIDS
2f2daebe7479   halo      0.15%     590.7MiB / 1.848GiB   31.22%    3.55GB / 925MB   4.18GB / 336kB    79
724328e68469   halodb    0.00%     59.62MiB / 1.848GiB   3.15%     136MB / 3.53GB   4.34GB / 6.93MB   16
#v2.10.2
CONTAINER ID   NAME      CPU %     MEM USAGE / LIMIT     MEM %     NET I/O          BLOCK I/O         PIDS
9271de4c948c   halo      0.14%     582.1MiB / 1.848GiB   30.77%    156MB / 3.91MB   20.4MB / 7.44MB   80
17b9dd4a0833   halodb    1.47%     50.22MiB / 1.848GiB   2.65%     1.56MB / 156MB   20.4MB / 3.77MB   16

#试着修改docker-compose.yaml添加一下参数,但是不管用啊,所以还是恢复原样吧
    environment:
       JVM_OPTS: >
        -Xms256m
        -Xmx256m