
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Friendica 是一个去中心化通信平台,集成了社交沟通功能。该平台可链接独立社交项目和企业服务,实现去中心化的社交网络体验。
!https://raw.githubusercontent.com/docker-library/docs/656ea9be01afdd087261aeae612d026012f1f63e/friendica/logo.svg?sanitize=true
amd64、arm32v5、arm32v6、arm32v7、arm64v8、i386、mips64le、ppc64le、riscv64、s390x| 标签 | Dockerfile 链接 |
|---|---|
2024.12-apache、apache、stable-apache、2024.12、latest、stable | https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2024.12/apache/Dockerfile |
2024.12-fpm、fpm、stable-fpm | https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2024.12/fpm/Dockerfile |
2024.12-fpm-alpine、fpm-alpine、stable-fpm-alpine | https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2024.12/fpm-alpine/Dockerfile |
2025.02-dev-apache、dev-apache、2025.02-dev、dev | https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2025.02-dev/apache/Dockerfile |
2025.02-dev-fpm、dev-fpm | https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2025.02-dev/fpm/Dockerfile |
2025.02-dev-fpm-alpine、dev-fpm-alpine | https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2025.02-dev/fpm-alpine/Dockerfile |
2025.07-rc-apache、rc-apache、2025.07-rc、rc | https://github.com/friendica/docker/blob/567780fda826aeaf8ec328fd48225f5d6a48e4e8/2025.07-rc/apache/Dockerfile |
2025.07-rc-fpm、rc-fpm | https://github.com/friendica/docker/blob/567780fda826aeaf8ec328fd48225f5d6a48e4e8/2025.07-rc/fpm/Dockerfile |
2025.07-rc-fpm-alpine、rc-fpm-alpine | https://github.com/friendica/docker/blob/567780fda826aeaf8ec328fd48225f5d6a48e4e8/2025.07-rc/fpm-alpine/Dockerfile |
apache(含Web服务器)和 fpm(FastCGI进程)两种镜像类型,适配不同部署需求。amd64、arm32v5、arm64v8 等多种硬件架构。dev(开发版)或 rc(候选版)镜像测试新功能,加速定制化开发。apache 镜像开箱即用,适合快速搭建演示环境或小型实例。fpm 镜像配合Nginx等Web服务器,优化并发处理能力,适合中大型部署。Friendica Docker镜像提供两种主要类型,适用于不同场景:
apache 镜像:包含完整Friendica安装和Apache Web服务器,开箱即用,适合快速部署。latest、stable 等标签默认指向此类型。fpm 镜像:基于 php-fpm,仅运行FastCGI进程,需配合Nginx等Web服务器转发请求,适合高性能生产环境。前提条件
启动命令
bash# 创建网络(若需连接数据库容器) docker network create friendica-network # 启动数据库容器 docker run -d \ --name friendica-db \ --network friendica-network \ -v mysql-data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=your_root_pw \ -e MYSQL_DATABASE=friendica \ -e MYSQL_USER=friendica \ -e MYSQL_PASSWORD=your_db_pw \ mariadb # 启动Friendica Apache容器 docker run -d \ --name friendica-app \ --network friendica-network \ -p 8080:80 \ -v friendica-data:/var/www/html \ -e MYSQL_HOST=friendica-db \ -e MYSQL_USER=friendica \ -e MYSQL_PASSWORD=your_db_pw \ -e MYSQL_DATABASE=friendica \ -e FRIENDICA_URL=http://localhost:8080 \ -e FRIENDICA_ADMIN_MAIL=admin@example.com \ friendica:apache
访问 http://localhost:8080 即可进入Friendica安装向导(若未配置自动安装)。
架构说明
fpm 镜像需配合Web服务器(如Nginx),通过FastCGI协议处理HTTP请求。Web服务器需访问Friendica静态文件(如CSS、图片),可通过卷共享实现。
示例部署(Docker Compose)
yamlservices: db: image: mariadb volumes: - mysql-data:/var/lib/mysql environment: - MYSQL_DATABASE=friendica - MYSQL_USER=friendica - MYSQL_PASSWORD=your_db_pw - MYSQL_RANDOM_ROOT_PASSWORD=yes app: image: friendica:fpm volumes: - friendica-data:/var/www/html environment: - MYSQL_HOST=db - MYSQL_USER=friendica - MYSQL_PASSWORD=your_db_pw - MYSQL_DATABASE=friendica - FRIENDICA_URL=https://your-domain.com web: image: nginx ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/nginx.conf:ro - friendica-data:/var/www/html # 共享静态文件 depends_on: - app volumes: mysql-data: friendica-data:
Nginx配置示例(nginx.conf):
nginxevents {} http { server { listen 80; server_name your-domain.com; root /var/www/html; index index.php; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { fastcgi_pass app:9000; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } }
4.4.1 Friendica核心设置
| 变量名 | 默认值 | 说明 |
|---|---|---|
FRIENDICA_URL | - | 完整URL(含协议、域名、子路径),如 https://friendica.example.com/sub/ |
FRIENDICA_TZ | - | 服务器时区,如 Asia/Shanghai |
FRIENDICA_LANG | - | 默认语言,如 zh-CN |
FRIENDICA_SITENAME | - | 网站名称 |
FRIENDICA_NO_VALIDATION | false | 设为 true 禁用URL和***验证 |
FRIENDICA_DATA | DB | 存储提供商(如 Filesystem 使用文件系统存储媒体文件) |
FRIENDICA_DATA_DIR | /var/www/data | 数据存储目录 |
FRIENDICA_UPGRADE | false | 设为 true 强制升级(即使版本相同),dev/rc镜像需启用 |
4.4.2 日志配置
| 变量名 | 默认值 | 说明 |
|---|---|---|
FRIENDICA_DEBUGGING | false | 设为 true 启用调试日志 |
FRIENDICA_LOGFILE | /var/www/friendica.log | 日志文件路径 |
FRIENDICA_LOGLEVEL | notice | 日志级别(debug/info/notice/warning/error/critical) |
FRIENDICA_LOGGER | stream | 日志类型(stream/syslog/monolog) |
FRIENDICA_SYSLOG_FLAGS | `LOG_PID | LOG_ODELAY |
FRIENDICA_SYSLOG_FACTORY | LOG_USER | syslog设备(仅 syslog 类型生效) |
4.4.3 数据库配置(必填)
| 变量名 | 默认值 | 说明 |
|---|---|---|
MYSQL_USER | - | 数据库用户名 |
MYSQL_PASSWORD | - | 数据库密码 |
MYSQL_DATABASE | - | 数据库名称 |
MYSQL_HOST | - | 数据库主机名或IP |
MYSQL_PORT | 3306 | 数据库端口 |
4.4.4 Redis锁驱动(可选)
用于分布式锁管理,优化并发任务处理。
| 变量名 | 默认值 | 说明 |
|---|---|---|
REDIS_HOST | - | Redis主机名 |
REDIS_PORT | 6379 | Redis端口 |
REDIS_PW | - | Redis密码(若启用认证) |
REDIS_DB | 0 | Redis数据库编号 |
4.4.5 PHP资源限制
| 变量名 | 默认值 | 说明 |
|---|---|---|
PHP_MEMORY_LIMIT | 512M | PHP内存限制 |
PHP_UPLOAD_LIMIT | 512M | 上传文件大小限制(post_max_size 和 upload_max_filesize) |
4.4.6 邮件配置(可选)
用于用户注册验证、密码重置、系统通知等,需配置SMTP服务器。
| 变量名 | 默认值 | 说明 |
|---|---|---|
SMTP | - | SMTP服务器地址(必填),如 smtp.example.com |
SMTP_PORT | 587 | SMTP端口 |
SMTP_DOMAIN | - | 发件人域名(必填),如 friendica.example.com |
SMTP_FROM | no-reply | 发件人用户名(完整***为 SMTP_FROM@SMTP_DOMAIN) |
SMTP_TLS | - | 设为任意值启用TLS连接(与 SMTP_STARTTLS 二选一) |
SMTP_STARTTLS | On | 启用STARTTLS(默认开启,与 SMTP_TLS 冲突时优先TLS) |
SMTP_AUTH | On | 启用SMTP认证 |
SMTP_AUTH_USER | - | SMTP认证用户名 |
SMTP_AUTH_PASS | - | SMTP认证密码 |
Friendica数据(配置、用户上传文件等)存储在容器内 /var/www/html 目录,需通过Docker卷挂载实现持久化:
bash# 创建命名卷(推荐) docker volume create friendica-data # 启动容器时挂载卷 docker run -d \ -v friendica-data:/var/www/html \ ... 其他参数 ... friendica:apache
通过环境变量配置实现自动安装,无需手动执行安装向导。需至少设置以下变量:
| 变量名 | 说明 |
|---|---|
FRIENDICA_URL | 实例完整URL |
FRIENDICA_ADMIN_MAIL | 管理员***(用于登录和恢复) |
MYSQL_USER/MYSQL_PASSWORD/MYSQL_DATABASE/MYSQL_HOST | 数据库连接信息(必填) |
示例:
bashdocker run -d \ -e FRIENDICA_URL=https://friendica.example.com \ -e FRIENDICA_ADMIN_MAIL=admin@example.com \ -e MYSQL_HOST=db \ -e MYSQL_USER=friendica \ -e MYSQL_PASSWORD=your_db_pw \ -e MYSQL_DATABASE=friendica \ ... 其他参数 ... friendica:apache
为避免敏感信息(如数据库密码)
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务