海口网站建设专家评价,wordpress有广告插件,东莞市住房建设局网站首页,微信小程序制作宣传页本文完成于 5 月中旬#xff0c;发布时未在最新版本上验证#xff1b; 什么是 typecho #xff1f; Typecho 是一款基于 PHP 的博客软件#xff0c;旨在成为世界上最强大的博客引擎。Typecho 在 GNU 通用公共许可证 2.0 下发布。支持多种数据库#xff0c;原生支持 Markdo… 本文完成于 5 月中旬发布时未在最新版本上验证 什么是 typecho Typecho 是一款基于 PHP 的博客软件旨在成为世界上最强大的博客引擎。Typecho 在 GNU 通用公共许可证 2.0 下发布。支持多种数据库原生支持 Markdown 排版语法是一款轻量、高效、稳定、简洁的开源博客程序。 命令行安装
在群晖上以 Docker 方式安装。
typecho 的镜像版本比较多例如基于 php7.4 的版本就包含了nightly-php7.4、nightly-php7.4-apache、nightly-php7.4-cli、nightly-php7.4-fpm 这 4 个版本
因为基于 apache 的容器在老苏的低内核版本的机器上会在初始化时出现下面的错误
Function not implemented: AH00141: Could not initialize random number generator所以最后老苏选择了 nightly-php7.4-fpm 这个 tag 的版本但 fpm 镜像本身未内置 web 服务器需要依赖于 nginx 或者其他 web 服务
第一步、将下面的内容保存为 docker-compose.yml 文件
version: 3.7services:app:image: joyqi/typecho:nightly-php7.4-fpmcontainer_name: typecho-serverrestart: alwaysvolumes:- ./www:/appenvironment:- TIMEZONEAsia/Shanghaidepends_on:- dbdb:image: mariadb:10.6container_name: typecho-mariadbrestart: alwaysvolumes:- ./data:/var/lib/mysqlenvironment:- TZAsia/Shanghai- MYSQL_ROOT_PASSWORDLHFeR2vSfiTR- MYSQL_DATABASEtypecho- MYSQL_USERtypecho- MYSQL_PASSWORDLs59JAqRiymLweb:image: nginxcontainer_name: typecho-nginxrestart: alwaysports:- 8812:80links:- appvolumes:- ./nginx.conf:/etc/nginx/nginx.conf:rovolumes_from:- appdepends_on:- appjoyqi/typecho:nightly-php7.4-fpm 的说明
关于镜像 nightly-php7.4-fpm 的环境变量很多请参考官方文档 https://github.com/typecho/Dockerfile#environment-variables
但老苏发现设了并没有起作用在设置向导中还是需要手工输入所以就没用环境变量只保留了 TIMEZONE
mariadb:10.6 的说明
可变值TZ时区设置为 Asia/ShanghaiMYSQL_ROOT_PASSWORD数据库管理员账号的密码MYSQL_DATABASE数据库库名设为了 typechoMYSQL_USER数据库用户设为了 typechoMYSQL_PASSWORD数据库用户typecho 对应的密码
nginx 的说明
本地端口容器端口881280
本地端口只要不冲突就行不确定的话可以用命令查一下
# 查看端口占用
netstat -tunlp | grep 端口号第二步、将下面的内容保存为 nginx.conf 文件
worker_processes auto;error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;events {worker_connections 1024;
}http {include /etc/nginx/mime.types;default_type application/octet-stream;log_format main $remote_addr - $remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for;access_log /var/log/nginx/access.log main;sendfile on;#tcp_nopush on;# Prevent nginx HTTP Server Detectionserver_tokens off;keepalive_timeout 65;#gzip on;#upstream php-handler {# server app:9000;#}server {listen 80 default_server;root /app;index index.php;access_log /var/log/nginx/typecho_access.log main;if (!-e $request_filename) {rewrite ^(.*)$ /index.php$1 last;}location / {index index.html index.htm index.php;if (!-e $request_filename) {rewrite . /index.php last;}}location ~\.php(.*)$ {fastcgi_pass app:9000;fastcgi_index index.php;fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;fastcgi_split_path_info ^((?U).\.php)(/?.)$;fastcgi_param PATH_INFO $fastcgi_path_info;fastcgi_param SCRIPT_NAME $fastcgi_script_name;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}}
}第三步、依次执行下面的命令
# 新建文件夹 typecho 和 子目录
mkdir -p /volume2/docker/typecho/{data,www}# 进入 typecho 目录
cd /volume2/docker/typecho# 将 docker-compose.yml 和 nginx.conf 放入当前目录# 一键启动
docker-compose up -d以上文件可以在这里找到 https://github.com/wbsu2003/synology/tree/main/typecho 运行
在浏览器中输入 http://群晖IP:8812 就能看到主界面第一次会需要设置 点 开始下一步 开始设置数据库
数据库适配器默认的 Pdo_Mysql 就可以数据库前缀默认的 typecho_ 就可以数据库地址不能使用 localhost要改为 docker-compose.yml 中设置的 db数据库用户名要对应 mariadb:10.6 的环境变量 MYSQL_USER 的值数据库密码要对应 mariadb:10.6 的环境变量 MYSQL_PASSWORD 的值数据库名要对应 mariadb:10.6 的环境变量 MYSQL_DATABASE 的值高级选项默认就可以一般不需要修改 接下来设置管理员
网站地址如果局域网使用用 IP就行否则改为域名例如https://typecho.laosu.ml:444用户名根据需要自行设置登录密码根据需要自行设置邮件地址根据需要自行设置 安装完成后有两个地址选项 点 查看您的 Blog 或者在浏览器中输入 http://群晖IP:8812 点 访问您的控制面板 开始使用 发一篇文章 去首页看看 中文软件功能很容易上手
参考文档 Typecho Official Site 地址https://typecho.org/ typecho/typecho: A PHP Blogging Platform. Simple and Powerful. 地址https://github.com/typecho/typecho typecho/Dockerfile: Docker Image packaging for Typecho 地址https://github.com/typecho/Dockerfile