标签搜索

目 录CONTENT

文章目录

如何在我们自己的VPS/NAS部署Typecho建站系统

yyzq
2025-09-06 / 0 评论 / 1 点赞 / 58 阅读 / 1,674 字

前言

在当今互联网时代,拥有属于自己的网站已经不再是大公司的专利。无论是写博客、分享教程,还是搭建个人作品集,一个轻量、高效、可自定义的网站系统都是非常重要的工具。

本教程将带你从 0 到 1,在我们自己的 VPS 上部署 Typecho 建站系统。Typecho 是一款轻量级的博客平台,默认支持 Markdown 语法,安装和维护都非常简便,非常适合个人站长和技术爱好者使用。

不管你是第一次搭建博客,还是希望尝试更灵活的部署方式,这篇教程都会给你一个完整的、可操作的指导。
准备好了吗?让我们一起动手,把你的博客从零搭建起来吧! 🚀

项目简介

Typecho 是一款轻量级的开源博客系统,由 PHP 开发,特点是简洁、高效且易于扩展。它非常适合个人博客、技术教程网站以及小型内容平台。

核心特点

  • 支持多种数据库:(MariaDB、MySQL、SQLite、PostgreSQL)
  • 轻量级:Typecho 的安装包小,运行所需资源少,非常适合 VPS 或小型服务器环境。
  • Markdown 支持:默认即可使用 Markdown 语法进行写作,让内容排版更规范、更高效。
  • 插件和主题丰富:支持插件扩展功能,也可以通过主题自定义网站外观。
  • 简单易用:后台管理界面简洁直观,用户上手快,无需复杂配置。
  • 活跃社区:拥有活跃的开发者社区,可以获取教程、插件和主题资源。

使用场景

  • 个人博客或技术笔记
  • 教程和图文教程发布平台
  • 小型团队或个人作品展示网站

项目图片

主页面
image-1757126356890
备份界面
image-1757126624815
新建文章
image-1757126675389

demo

网友使用Typecho部署的网站
https://rumosky.com/
有兴趣的可以参观下

部署方法

使用Docker安装

本教程使用docker的方式安装部署,简单便捷
164b6ac419e23bc5390dc46601a202bf

准备条件

1)一台服务器或者NAS(理论上只有其他NAS都可以)

我们使用飞牛云NAS和VPS来演示
需要vps的可以看以下信息
莱卡云官网

2)本项目使用到的开源项目

https://github.com/typecho/typecho
image-1757126740420
目前有12k stars
更多功能或者二次修改可以访问gitee

3)域名(可选)

域名可以根据自己的需求绑定

①《飞牛NAS上搭建》

新建项目:

typecho

compose配置如下:

services:
  typecho:  # Typecho 博客服务
    image: joyqi/typecho:nightly-php8.2-apache  # 官方 Apache 镜像
    container_name: typecho
    ports:
      - "8383:80"  # 宿主机 8383 -> 容器 80
    environment:
      TZ: Asia/Shanghai  # 设置时区为上海
    volumes:
      - ./typecho/app/usr:/app/usr  # 当前目录存放 Typecho 文件
    depends_on:
      - db  # 依赖数据库
    restart: always  # 自动重启策略

  db:  # 数据库服务
    image: mariadb:10.6  # MariaDB 镜像
    container_name: typecho-db
    environment:
      MYSQL_ROOT_PASSWORD: root_password  # 数据库 root 密码(请修改)
      MYSQL_DATABASE: typecho  # 默认数据库
      MYSQL_USER: typecho  # 数据库用户
      MYSQL_PASSWORD: typecho_password  # 用户密码(请修改)
      TZ: Asia/Shanghai  # 时区
    volumes:
      - ./db:/var/lib/mysql  # 数据库数据存放当前目录
    restart: always

接下来启动即可
image-1757126999435
正常启动
image-1757127018959

首次启动需要等待数据库初始化完成就可以
打开
飞牛云的
ip:8383(防火墙放开)
端口即可打开
image-1757127074241
进入初始化界面
具体初始化步骤请参考后面在VPS上的部署的操作

补充docker可用的镜像仓库

国内如果无法拉取镜像的可以使用
仓库1

https://1ms.run/

仓库2

https://docker.ywsj.tk/

仓库3

https://mirror.azure.cn/

仓库4

https://hub.rat.dev/

仓库5

https://docker.1ms.run

仓库6

https://docker.itelyou.cf/

仓库7

https://abc.itelyou.cf/

②《vps上搭建》

一、Docker环境部署

在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04

推荐直接用一键脚本

docker安装脚本

bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)

docker-compose安装脚本

curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

二、创建docker-compose.yml文件

mkdir typecho;cd typecho #创建一个目录,并进入此目录

然后再新建docker-compose.yml

vim docker-compose.yml
services:
  typecho:  # Typecho 博客服务
    image: joyqi/typecho:nightly-php8.2-apache  # 官方 Apache 镜像
    container_name: typecho
    ports:
      - "8383:80"  # 宿主机 8080 -> 容器 80
    environment:
      TZ: Asia/Shanghai  # 设置时区为上海
    volumes:
      - ./typecho/app/usr:/app/usr  # 当前目录存放 Typecho 文件
    depends_on:
      - db  # 依赖数据库
    restart: always  # 自动重启策略

  db:  # 数据库服务
    image: mariadb:10.6  # MariaDB 镜像
    container_name: typecho-db
    environment:
      MYSQL_ROOT_PASSWORD: root_password  # 数据库 root 密码(请修改)
      MYSQL_DATABASE: typecho  # 默认数据库
      MYSQL_USER: typecho  # 数据库用户
      MYSQL_PASSWORD: typecho_password  # 用户密码(请修改)
      TZ: Asia/Shanghai  # 时区
    volumes:
      - ./db:/var/lib/mysql  # 数据库数据存放当前目录
    restart: always

三、执行容器运行命令

docker-compose up -d #运行容器
docker-compose ps  #查看是否开启成功

正常启动如下所示

docker-compose ps
NAME         IMAGE                                 COMMAND                  SERVICE   CREATED         STATUS         PORTS
typecho      joyqi/typecho:nightly-php8.2-apache   "docker-php-entrypoi…"   typecho   8 minutes ago   Up 8 minutes   0.0.0.0:8383->80/tcp, [::]:8383->80/tcp
typecho-db   mariadb:10.6                   

四、打开web页面使用

成功以后需要打开自己相应的端口(8383)防火墙就可以web端访问了

http://ip:8383

初始化开始
image-1757127684670
下一步-根据图示配置数据库信息
image-1757128020455
配置管理员信息
image-1757128170079
安装成功
image-1757128195917
管理后台
image-1757128229820
网站页面
image-1757128254327
接下来就是补充你自己的文章了
image-1757128300586

绑定域名

自己的网站还是应该绑定域名的
绑定域名可以参考

视频教程

B站

YouTube

NginxProxyManager https://duan.yyzq.eu.org//npm-ch 绑定完域名配置好证书就可以用域名来访问了

有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我

欢迎关注我们的微信公众号!
微信公众号

1

评论区