Farbox2.0 第一篇

都江堰
都江堰

前言

引用一位“先行者”的话:

Farbox2.0 是一个免费的多站点开源博客系统,它将数据掌控权还给用户。

  • 作者 Github:https://github.com/hepochen/FarBox
  • Farbox 源码:https://github.com/hepochen/FarBox
  • Farbox 文档:https://doc.farbox.org/
  • Farbox 主题模版:https://github.com/BuildFarBox/templates/tree/master/template_packages

我推测作者可能分身乏术,且可能此产品没有太大的市场,所以将 Farbox2.0 开源,可以从相关的文档看到,很多客制化的方法并没有写得很清楚,所以想要完全掌控,还得看看它的源码。

部署步骤

拉取 Farbox 的 docker image

前提条件: 已安装 Docker

sudo docker pull hepochen/farbox_bucket:latest                                         

安装作者写的 Docker 管理工具: xserver

前提条件:确保已安装 Python2 和 Pip2, 没错,这个工具是基于 Python2 写的。
我的环境是 Python2, Python3 都有,所以我就是加软链接的方式让 python 和 pip 分别指向 python2 和 pip2

ubuntu@VM-0-16-ubuntu:~$ ls -l /usr/bin | grep python
...
lrwxrwxrwx 1 root root          16 Feb  3 21:41 python -> /usr/bin/python2
lrwxrwxrwx 1 root root           9 Jul 28  2021 python2 -> python2.7
-rwxr-xr-x 1 root root     3592504 Jul  1  2022 python2.7
...
ubuntu@VM-0-16-ubuntu:~$ ls -l /usr/bin | grep pip
...
lrwxrwxrwx 1 root root          13 Feb  3 21:44 pip -> /usr/bin/pip2
-rwxr-xr-x 1 root root         368 Mar 26  2022 pip2

安装 xserver

sudo pip install xserver

给 xserver 配置 Farbox

通过执行如下命令配置

sudo xserver_package deploy farbox memcache=200mb

我搜了下配置文件应该是如下路径:

ubuntu@VM-0-16-ubuntu:/home/run/farbox$ ls
configs  run.sh  start_at

默认的 Docker container 配置:

ubuntu@VM-0-16-ubuntu:/home/run/farbox$ cat run.sh
#!/bin/bash
docker run -d \
 -p 7788:80 -p 443:443 -p 80:80 \
 -v /home/run/$name$/configs:/mt/web/configs \
 -v /data/log/$name$:/mt/web/log \
 -v /data/$name$:/mt/web/data \
 -v /data/$name$_ssdb:/mt/ssdb/data \
 -v /data/$name$_es:/mt/es/data \
 -v /log/$name$_es:/mt/es/log \
 -v /static/$name$:/mt/web/static \
 -v /log/docker:/mt/docker/log \

通过 xserver 启动 Docker Container

sudo xserver start farbox

通过 xserver 添加 Farbox Container 保活

sudo xserver install_start
sudo xserver install_live

控制台配置

此步骤略,可以参考将数据掌控权还给用户,免费的多站点开源博客系统:Farbox 2里的步骤。

效果

参考资料

总结

优点:

  • 配合 metion 编辑器,可以一键更新博文内容到 Farbox,不需要重新排版什么的

缺点:

  • 后面的 xserver 应该是不必要的
    • 第二篇会探索用 docker compose 方式启动 farbox
  • Farbox 内置的主题非常简洁,但是没有一款我喜欢的
    • 第二篇将试着修改一个主题模版以达到想要的效果
  • 我不想要 Farbox 独享 80 端口
- End -
'