Skip to content

如何安装 Castopod ?

Castopod 的安装非常简单。 你能在大多数兼容的 PHP-MySQL 的服务器上安装 Castopod, 无论是专用还是 共享主机。

要求

  • PHP v8.3 or higher
  • MySQL 5.7 或更高版本与 MariaDB 10.2 或更高版本
  • HTTPS 支持
  • 用于验证的 NTP 同步时钟 传入请求

PHP v8.3 or higher

PHP version 8.3 or higher is required, with the following extensions installed:

此外,请确保在 PHP 中启用以下扩展:

  • json (默认启用-不要关闭)
  • xml (默认启用-不要关闭)
  • mysqlnd

兼容 MySQL 的数据库

我们建议使用 MariaDB

你需要填写服务器主机名、数据库名称、用户名和密码才能完成安装过程。 如果没有这 些,请与你的服务器管理员联系。

权限

用户至少需要在数据库中有这些权限,Castopod 才能工作: CREATEALTERDELETEEXECUTEINDEXINSERTSELECTUPDATEREFERENCESCREATE VIEW

(可选)FFmpeg v4.1.8 或更高版本,用于视频素材

如果你需要视频素材,则需要 FFFmpeg 4.1.8 或更高版本。 必须安装以下扩展:

  • FreeType 2 来自库 gd

(可选)其他建议

  • 使用 Redis 提高缓存性能。
  • CDN 用于静态文件缓存以实现更好的性能。
  • 电子邮件用于找回密码。

安装说明

准备环境

  1. 需要一台已经实现 环境要求的 Web 服务器

  2. 为 Castopod 创建一个 MySQL 数据库,其中用户具有访问和修改权限(有关详细信息, 请参阅 MySQL 兼容数据库)。

  3. 使用 SSL 证书 在您的域激活 HTTPS。

  4. 下载最新的 Castopod 到 web 服务器并解压(如果尚未下 载)。

    • ⚠️ 将 web 服务器根目录设置为 castopod 文件夹中的 public/ 子文件夹。
  5. 在 Web 服务器上为各种后台进程添加 cron 任务 (相应地替换路径):

    Terminal window
    * * * * * /path/to/php /path/to/castopod/spark tasks:run >> /dev/null 2>&1

    注意 - 如果您不添加此 cron 任务,则以下 Castopod 功能不工作:

    • 从现有的 RSS 摘要导入播客文件
    • 在联邦宇宙中向您的关注者广播社交活动
    • 使用 WebSub 开放订阅打开广播剧集
    • 生成视频素材 - 需要 FFmpeg

(推荐) 安装向导

  1. 前往你最喜欢的浏览器并跳转至安装向导页面 (https://your_domain_name.com/cp-install)运行 Castopod 安装脚本。
  2. 请按照屏幕上的说明进行操作。
  3. 开始播客!

Using CLI

  1. Create a .env file in the package root based on the .env.example file.

  2. Initialize the database using:

    Terminal window
    php spark install:init-database
  3. Create the superadmin user using:

    Terminal window
    php spark install:create-superadmin
  4. Head on to your admin gateway to start podcasting!

邮箱/SMTP 设置

某些功能需要电子邮件配置才能正常工作(例如: 找回密码,向高级订阅者发送说明, …)

你可以在实例的 .env 中添加你的电子邮件配置,如下所示:

# […]
# […]
email.fromEmail="你的邮件地址"
email.SMTPHost="你的邮件主机"
email.SMTPUser="你的邮件用户名"
email.SMTPPass="你的邮件密码"

电子邮件配置选项

变量名称类型默认
fromEmailstringundefined
fromNamestring"Castopod"
SMTPHoststringundefined
SMTPUserstringundefined
SMTPPassstringundefined
SMTPPortnumber25
SMTPCrypto["tls" or "ssl"]"tls"

媒体存储

默认情况下,文件使用文件系统保存到 公共/媒体 文件夹中。 如果您需要将 media 文件夹重新定位到其他位置,您可以在您的 .env 文件中指定它,如下所示:

# […]
media.root="media"
media.storage="/mnt/storage"

在此示例中,文件将保存到 /mnt/storage/media 文件夹。 请确保同时更新您的 Web 服务 器配置以应用此更改。

S3

如果您想要将媒体文件存储在 S3 兼容存储上,可以在您的 .env 中指定:

# […]
media.fileManager="s3"
media.s3.endpoint="your_s3_host"
media.s3.key="your_s3_key"
media.s3.secret="your_s3_secret"
media.s3.region="your_s3_region"

S3 配置选项

变量名称类型默认
endpointstringundefined
keystringundefined
secretstringundefined
regionstringundefined
bucketstringcastopod
protocolnumberundefined
pathStyleEndpointbooleanfalse
keyPrefixstringundefined

社区套餐

如果你不想手动安装 Castopod,可以使用一个由开源社区创建和维护的软件包。

使用 YunoHost 安装

YunoHost 是一个基于 Debian GNU/Linux 的发行版,由免费和 开源软件包组成。 它可以为你解决自托管的困难。