收起左侧

在飞牛系统上搭建 Typecho 博客系统 - 原创持续更新

2
回复
40
查看
[ 复制链接 ]

2

主题

25

回帖

0

牛值

江湖小虾

在飞牛系统上搭建 Typecho 博客系统 - 原创持续更新

博客站:https://moji.565882.xyz

什么是Typecho

这是一款基于 PHP 的博客软件,旨在成为世界上最强大的博客引擎。Typecho 是根据 GNU 通用公共许可证 2.0 发布的。

typecho09.jpeg

主要特点

  • 支持多个数据库(MariaDB、MySQL、SQLite、PostgreSQL)
  • Markdown 支持
  • 插件支持
  • 主题支持
  • 自定义字段
  • 自定义页面

Docker容器部署

分两个部分,一个是Typecho,另一个是数据库Mariadb,独立数据库是为了将数据库作为公共数据库使用,方便其它容器链接和管理。

涉及到的资源

  1. typecho:
  2. mariadb
    Linuxserver.io:https://docs.linuxserver.io/images/docker-mariadb/#usage
  3. adminer
    hub.docker.com:https://hub.docker.com/_/adminer/tags

测试主题

  1. 老朱开源主题WaterDrop:https://github.com/ZShijun/WaterDrop
  2. 木灵鱼儿开源主题Typecho_Theme_JJ:https://github.com/mulingyuer/Typecho_Theme_JJ
  3. 开源主题Joe:https://github.com/HaoOuBa/Joe

1. 博客系统Typecho

请输入图片描述

docker-compose

version: '3.7'

services:
  typecho:
    image: joyqi/typecho:nightly-php8.2-apache
    container_name: typecho-server
    restart: always
    environment:
      - TYPECHO_SITE_URL=https://your-domain.com  # 替换为您自己的域名
    ports:
      - 8080:80  # 端口只是一个例子,你可以把它改成任何你想要的端口 `8080`
    volumes:
      - /var/typecho:/app/usr  # 将本地目录挂载到容器目录以获取持久性数据

docker run(可选,需要命令行操作)

# 拉起镜像
sudo docker pull joyqi/typecho:nightly-php8.2-apache

# 运行docker run命令
sudo docker run -d --name typecho-server -e TYPECHO_SITE_URL=https://your-domain.com -v /var/typecho:/app/usr joyqi/typecho:nightly-php8.2-apache

2. 数据库Mariadb

请输入图片描述

docker-compose

---
version: "2"
services:
  mariadb:
    image: linuxserver/mariadb
    container_name: mariadb
    environment:
      - PUID=1000
      - PGID=1001
      - MYSQL_ROOT_PASSWORD=  # 密码
      - TZ=Asia/Shanghai
    volumes:
      - ./config:/config
    ports:
      - 3336:3306
    networks:
      - mynet
    restart: unless-stopped
  # 可视化管理工具 adminer
  adminer:
    image: adminer
    container_name: adminer
    environment:
      - ADMINER_DEFAULT_SERVER=mariadb
    ports:
      - 8030:8080
    networks:
      - mynet
    restart: unless-stopped

networks:
  mynet:
    external:
      name: mynet

程序安装

1. MariaDB 创建数据库typecho

请输入图片描述

2. 初始化 Typecho

**1. 易配置失败点:**数据库适配器选择注意。 如果选择Mysql原生函数适配器,会报错`error`,而MariaDB旨在保持与MySQL的高度兼容性,要选择`pdo驱动Mysql适配器`。

  1. 新上传主题启用失败,预览不显示,读取不了文件 index.php

**解决办法:**修改新主题权限,给予公共读取权限。
可以安装应用1panel,这个是服务器管理工具。

其它补充

  1. 亲测版本注意错误:
    这个镜像版本在配置SQlite数据库时会一直报错,原因是安装程序无法自动生成sqlite数据库文件。
    joyqi/typecho:nightly-php7.4-apache
    

解决办法:
在官方仓库有解决办法:https://github.com/typecho/Dockerfile/issues/29
请输入图片描述

进入容器输入命令:

`chown -R www-data:www-data /app/usr`

请输入图片描述

  1. 如果选择SQlite数据库,直接选择 SQlite 原生函数适配器。但这个数据库很多主题不支持,大多主题是Mysql数据库开发的。
    请输入图片描述

庐山真面目

前两年也安装过,后来迁移服务器就停了一直没再开。现在算是重拾起来但发现快忘得差不多了,一些易出错的地方花了我不少时间排查错误。故记录下来以便查询。


插件扩展

1. LZStat

基于 typecho 的浏览量、点赞量统计插件。

  • 支持浏览量统计与显示
  • 支持点赞量统计与显示
  • 支持文章列表自定义排序
  • 支持浏览量、点赞量异步接口调用
  • 实现浏览量、点赞量当天不重复计算
  • 支持点赞在当天取消
  • 实现防抖策略,避免多次重复提交
  • 实现榜单查询功能

请输入图片描述

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

2

主题

25

回帖

0

牛值

江湖小虾

4 小时前 楼主 显示全部楼层

吐槽一下cry
markdown编辑器使用很不习惯,粘贴过来后原来格式解析不一致,导致我反复检查修改多次。用起来很蹩脚,难受。

1

主题

71

回帖

155

牛值

社区共建团

社区上线纪念勋章社区共建团荣誉勋章飞牛百度网盘玩家

titter 我用的就是Typecho,docker的Typecho很难用,我后来改变思路直接docker宝塔了

科学技术这一仗,一定要打,而且必须打好。

                                                -------**
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则