在 Alpine 环境下使用包管理部署 Typecho 博客

技术 发布于 1 年前

最近在逛 NodeSeek 时,看到网友分享的阿里云通过自定义镜像 156 块购买 5 年云服务器的办法,但存储只有 1G,使用 Docker 部署后存储空间太小,所以考虑直接用包管理来安装 Caddy2+PHP-FPM 来部署 Typecho 博客。

更换国内镜像源

因为使用的是国内服务器,apline 官方源访问很慢,所以更换成阿里云的源。vi /etc/apk/repositories将其中的域名更换成 mirrors.aliyun.com,这里使用的是 Alpine v3.15 版本。

https://mirrors.aliyun.com/alpine/v3.15/main
https://mirrors.aliyun.com/alpine/v3.15/community

安装软件包

因为服务器内存只有 512MB,所以直接使用的 Sqlite,没有安装 Mysql 扩展,其他扩展 (例如 memcached) 可根据需求来增删。

apk add php7-common php7-curl php7-ctype php7-fpm php7-fileinfo php7-gd php7-mbstring php7-pdo_sqlite php7-pecl-memcached php7-session php7-tokenizer php7-json php7-openssl openssl ca-certificates caddy memcached curl

配置 PHP-FPM

编辑 /etc/php7/php-fpm.d/www.conf 文件,修改如下:

user = caddy
group = caddy

listen = /var/run/php-fpm.sock

listen.owner = caddy
listen.group = caddy
listen.mode = 0660

配置 Caddy2

配置文件如下,写的比较简单,没有配置缓存等 header 信息:

carefu.link {
    root * /public/home
    file_server
    php_fastcgi unix//var/run/php-fpm.sock
}

开机自启动

rc-update add caddy
rc-update add php-fpm7
rc-update add memcached

启动服务

rc-service caddy start
rc-service php-fpm7 start
rc-service memcached start

配置文件权限

安装 Typecho 过程中,需要修改 /public/home 文件夹权限,避免安装过程中目录不可写。

chown caddy:caddy -R /public/home

评论(0)

发布评论

相关文章