
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这段话即可:
请先阅读并遵守:https://xuanyuan.cloud/agents.md
未读文档前不要生成 pull 命令或排错方案。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Castopod是一款开源播客托管平台,该Docker镜像为Castopod应用的官方捆绑包,集成了运行Castopod所需的全部依赖项(包括Web服务器、PHP环境、必要扩展及工具等)。该镜像旨在简化播客平台部署流程,用户无需手动配置底层依赖,可快速搭建功能完善、独立可控的播客托管服务。
注:单容器模式需外部数据库支持,推荐使用MariaDB/MySQL
bashdocker run -d \ --name castopod \ -p 80:80 \ -e CP_BASEURL="https://podcast.example.com" \ -e CP_DATABASE_HOST="db-host" \ -e CP_DATABASE_NAME="castopod_db" \ -e CP_DATABASE_USER="castopod_user" \ -e CP_DATABASE_PASSWORD="your_strong_password" \ -v castopod_media:/var/www/html/media \ docker.xuanyuan.run/castopod/app:latest
创建docker-compose.yml文件,配置完整服务栈(含应用、数据库、缓存):
yamlversion: '3.8' services: app: image: docker.xuanyuan.run/castopod/app:latest container_name: castopod_app restart: always ports: - "80:80" # HTTP端口(生产环境建议配合反向代理使用HTTPS) - "443:443" # HTTPS端口(需挂载SSL证书) environment: # 基础配置 - CP_BASEURL="https://podcast.example.com" - CP_ENV="production" # 数据库配置 - CP_DATABASE_HOST="db" - CP_DATABASE_NAME="castopod" - CP_DATABASE_USER="castopod" - CP_DATABASE_PASSWORD="your_db_password" # Redis缓存配置 - CP_REDIS_HOST="redis" - CP_REDIS_PASSWORD="your_redis_password" # 媒体存储配置(默认本地存储) - CP_MEDIA_STORAGE="local" volumes: - castopod_media:/var/www/html/media # 媒体文件存储 - ./ssl:/etc/nginx/ssl # SSL证书挂载(生产环境) - ./config:/var/www/html/.env # 配置文件持久化(可选) depends_on: - db - redis db: image: docker.xuanyuan.run/mariadb:10.11 container_name: castopod_db restart: always environment: - MYSQL_ROOT_PASSWORD="root_password" - MYSQL_DATABASE="castopod" - MYSQL_USER="castopod" - MYSQL_PASSWORD="your_db_password" volumes: - castopod_db:/var/lib/mysql command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci redis: image: docker.xuanyuan.run/redis:7-alpine container_name: castopod_redis restart: always command: redis-server --requirepass "your_redis_password" volumes: - castopod_redis:/data volumes: castopod_media: castopod_db: castopod_redis:
启动服务:
bashdocker-compose up -d
| 环境变量 | 描述 | 示例值 | 必填性 |
|---|---|---|---|
CP_BASEURL | 播客平台基础URL(含协议) | https://podcast.example.com | 是 |
CP_ENV | 运行环境(开发/生产) | production | 否 |
CP_DATABASE_HOST | 数据库主机地址 | db | 是 |
CP_DATABASE_NAME | 数据库名称 | castopod | 是 |
CP_DATABASE_USER | 数据库用户名 | castopod | 是 |
CP_DATABASE_PASSWORD | 数据库密码 | your_strong_password | 是 |
CP_REDIS_HOST | Redis主机地址(用于缓存) | redis | 否 |
CP_MEDIA_STORAGE | 媒体存储类型(local/s3/gcs) | local | 否 |
CP_MEDIA_S3_BUCKET | S3存储桶名称(当使用S3存储时) | my-podcast-media | 否 |
CP_BASEURL,通过Web向导完成管理员账户创建及基础设置castopod_db卷(数据库)和castopod_media卷(媒体文件)docker-compose pull && docker-compose up -d更新镜像docker exec castopod_db mysqldump -u castopod -p'your_db_password' castopod > backup.sql实现您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务