Ubuntu安装Typecho博客
Ubuntu安装Typecho博客
小码同学前言
轻量高效
仅仅 7 张数据表,加上不足 400KB 的代码,就实现了完整的插件与模板机制。超低的 CPU 和内存使用率,足以发挥主机的最高性能
先进稳定
原生支持 Markdown 排版语法,易读更易写。支持 BAE/GAE/SAE 等各类云主机,即使面对突如其来的高访问量,也能轻松应对。
简洁友好
精心打磨过的操作界面,依然是你熟悉的面孔,更多了一份成熟与贴心。每一个像素的剪裁,都只为离完美更进一步。
- Typecho需要的组件:
- PHP5.1 以上
- 支持Mysql, PostgreSQL, SQLite 中的任意一种并在PHP中安装了相关扩展
- CURL或Socket支持
- mbstring或iconv扩展支持
安装PHP
更新源
首先安装一个管理源的工具包
1 | apt-get install software-properties-common |
添加Ondřej Surý的PHP源
1 | add-apt-repository ppa:ondrej/php |
更新源
1 | apt-get update |
安装PHP7.4
安装PHP7.4和相关依赖
1 | apt-get install php7.4 php7.4-fpm php7.4-mysql php7.4-gd php7.4-mbstring |
启动PHP
1 | service php7.4-fpm start |
配置PHP7.4
1 | vim /etc/php/7.4/fpm/pool.d/www.conf |
在36
行找到 listen 项,把``/run/php/php7.4-fpm.sock改为
127.0.0.1:9000`,并保存文件
重启PHP
1 | service php7.4-fpm reload |
检测PHP是否成功启动
1 | lsof -i:9000 |
安装MySQL
我这里的mysql使用docker-compose安装,你需要安装docker和docker-compose
如果你还没安装可以参考我的这篇文章:https://blog.hikki.site/2802e5c6.html
准备工作
新建几个文件夹来存储MYSQL
数据库的相关数据。
mydir
:自定义的文件夹,用于宿主机和容器数据交换(可无视)db
:数据库的存放数据地方,比如新建后的数据库、数据库表存放的地方conf
:存储mysql数据库的配置文件init
:用户初始化数据库,将你一些旧的数据库的sql文件放到文件夹下,mysql容器会自动帮你导入到数据库中。
我将mysql
数据库容器放置在/home/docker/mysql/
下,新建文件夹存储数据。
1 | sudo cd /home/docker/mysql |
设置配置
在conf
文件夹下新建一个my.cnf
文件,用于设置数据库的编码格式。
1 | sudo vim ./conf/my.cnf |
将以下内容写入到my.cnf
1 | [mysqld] |
编写docker-compose.yml
前面的准备工作基本差不多了,现在来编写我们需要的容器,根据自己的需求来编写。我这里使用了3206的端口,不使用3306端口,是为了安全性,错开常见的端口,加强服务器安全性。
在/home/docker/mysql/
目录下,新建一个docker-compose.yml
文件
1 | sudo vim docker-compose.yml |
将以下内容写入到docker-compose.yml
文件中
1 | version: '3' |
version
:docker-compose的版本号(可自定义,首次启动版本号不能大于x.1)mysql5.6
:容器服务名称(可自定义)restart
:容器启动方式,这里选用启动总是重启image
:选择需要的镜像版本,我这里选择mysql的5.6版本container_name
:容器名称volumes
:需要挂载的目录,我这里挂载了四个目录,具体每个目录的作用看文章开头MYSQL_ROOT_PASSWORD
:数据库的超级管理员密码TZ
:数据库时区ports
:端口映射,也就是在外网访问3206的端口,服务器自动将3206的端口映射到docker容器的3306端口。
开放服务器端口
如果你是使用服务器的话,你还需要去服务器商那边开启安全组,开放对应端口3206。
我这里使用的是Ubuntu系统,Ubuntu默认使用的是UFW防火墙,因为我刚刚给mysql容器设置的3206的端口,这里需要开放3206端口,如果你在docker-compose.yml文件修改了映射端口,那在这里也需要修改开放端口。
1 | sudo ufw allow 3206 comment "mysql数据库" |
你如果是CentOS系统,可以执行以下命令开放3206端口
1 | sudo firewall-cmd --zone=public --add-port=3206/tcp --permanent |
启动mysql容器
在/home/docker/mysql/
目录下,执行以下命令,启动mysql容器。
1 | sudo docker-compose up -d # 执行该命令后,出现下如下情况说明启动成功了 |
如果在执行这步出错了,排除错误后,你应该先要进入该文件夹,关闭该容器,再重新启动。
关闭该容器指令:sudo docker-compose down
进入容器并创建数据库
进入容器
1 | docker exec -it mysql-5.6 /bin/bash |
进入mysql
1 | mysql -u root -p |
创建数据库
1 | CREATE DATABASE typecho_blog; |
安装Typecho
创建存放typecho源码目录
1 | mkdir -p /home/typecho && cd /home/typecho |
下载最新版本typecho
也可以到官网下载
1 | wget https://github.com/typecho/typecho/releases/latest/download/typecho.zip |
解压文件
1 | unzip typecho.zip |
我这里还没安装unzip
工具,需要安装一下
赋予该文件夹权限
1 | chmod -R 777 /home/typecho |
设置Nginx代理
以下是Nginx与PHP连接的一个示例配置,完成配置之后,重启nginx并在浏览器访问你自己的域名。
1 | server { |
设置Typecho连接数据库
浏览器打开服务器IP地址:192.168.2.6
设置数据库连接
初始化管理员
安装成功
更换Joe 主题
Joe仓库地址:https://github.com/HaoOuBa/Joe
Joe 博客:https://78.al/post/107.html
下载主题
一般主题包都是压缩包,将压缩包下载解压到Typecho/usr/themes/
文件夹下,然后到Typecho Web网站后台:控制台-->外观->启动主题
进入/usr/themes
1 | cd /home/typecho/usr/themes |
下载主题:
1 | https://github.com/HaoOuBa/Joe.git |
我这里下载主题默认是文件夹,不需要解压了。
更换主题
控制台-->外观->启动
文章参考:ubuntu手动搭建typecho博客
本文章来源于我的博客:https://blog.hikki.site