维护者:
https://github.com/friendica/docker
获取帮助:
Docker 社区 Slack、Server Fault、Unix & Linux 或 Stack Overflow
https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2024.12/apache/Dockerfile
https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2024.12/fpm/Dockerfile
https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2024.12/fpm-alpine/Dockerfile
https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2025.02-dev/apache/Dockerfile
https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2025.02-dev/fpm/Dockerfile
https://github.com/friendica/docker/blob/e56ad74382f7d3f3fcfb5942bb39d2e7d5b27343/2025.02-dev/fpm-alpine/Dockerfile
https://github.com/friendica/docker/blob/567780fda826aeaf8ec328fd48225f5d6a48e4e8/2025.07-rc/apache/Dockerfile
https://github.com/friendica/docker/blob/567780fda826aeaf8ec328fd48225f5d6a48e4e8/2025.07-rc/fpm/Dockerfile
https://github.com/friendica/docker/blob/567780fda826aeaf8ec328fd48225f5d6a48e4e8/2025.07-rc/fpm-alpine/Dockerfile
问题反馈:
https://github.com/friendica/docker/issues?q=
支持的架构:(https://github.com/docker-library/official-images#architectures-other-than-amd64)
https://hub.docker.com/r/amd64/friendica/%E3%80%81https://hub.docker.com/r/arm32v5/friendica/%E3%80%81https://hub.docker.com/r/arm32v6/friendica/%E3%80%81https://hub.docker.com/r/arm32v7/friendica/%E3%80%81https://hub.docker.com/r/arm64v8/friendica/%E3%80%81https://hub.docker.com/r/i386/friendica/%E3%80%81https://hub.docker.com/r/mips64le/friendica/%E3%80%81https://hub.docker.com/r/ppc64le/friendica/%E3%80%81https://hub.docker.com/r/riscv64/friendica/%E3%80%81https://hub.docker.com/r/s390x/friendica/
镜像制品详情:
https://github.com/docker-library/repo-info/blob/master/repos/friendica%EF%BC%88https://github.com/docker-library/repo-info/commits/master/repos/friendica%EF%BC%89
(包含镜像元数据、传输大小等)
镜像更新:
https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Ffriendica
https://github.com/docker-library/official-images/blob/master/library/friendica%EF%BC%88https://github.com/docker-library/official-images/commits/master/library/friendica%EF%BC%89
本文档来源:
https://github.com/docker-library/docs/tree/master/friendica%EF%BC%88https://github.com/docker-library/docs/commits/master/friendica%EF%BC%89
Friendica 是一款去中心化通信平台,集成了社交沟通功能。该平台可连接独立社交项目与企业服务。
!https://raw.githubusercontent.com/docker-library/docs/656ea9be01afdd087261aeae612d026012f1f63e/friendica/logo.svg?sanitize=true
本镜像设计用于微服务环境,提供两种类型供选择:
apache 标签:包含完整的 Friendica 安装及 Apache Web 服务器,易于使用且部署快速,是 latest 标签及未指定类型的版本标签的默认选择。
fpm 标签:基于 https://hub.docker.com/_/php/ 镜像,运行 FastCGI 进程以提供 Friendica 服务,需配合可代理 HTTP 请求至 FastCGI 端口的 Web 服务器使用。
至少需要一个 mariadb/mysql 容器与其链接。apache 镜像包含 Web 服务器并暴露 80 端口,启动命令如下:
console$ docker run -d -p 8080:80 --network some-network s390x/friendica
启动后,可通过主机系统的 http://localhost:8080/ 访问 Friendica 安装向导。
fpm 镜像需配合 Web 服务器以代理 HTTP 请求至容器的 FastCGI 端口(9000)。建议通过 Docker 网络(docker run --network <NAME> ... 或 compose.yaml)连接,无需映射 fpm 端口至主机:
console$ docker run -d s390x/friendica:fpm
由于 FastCGI 进程无法提供静态文件(样式表、图片等),Web 服务器需通过 volumes-from 选项访问这些文件(详见 Docker Compose 部分)。
Friendica 需要后台任务来获取、发送消息及维护实例,启用方式有二:
使用默认镜像并手动配置后台任务(参见 Friendica https://github.com/friendica/friendica/blob/2021.03-rc/doc/Install.md#required-background-tasks%EF%BC%89
使用默认镜像(apache、fpm、fpm-alpine)启动专用 cron 实例,并以 cron.sh 为启动命令(示例见 https://github.com/friendica/docker/blob/stable/.examples/docker-compose/insecure/mariadb-cron-redis/apache/docker-compose.yml%EF%BC%89
Friendica 设置
FRIENDICA_URL:Friendica 完整 URL,含协议、域名及子路径(例:[***]FRIENDICA_TZ:服务器默认时区FRIENDICA_LANG:服务器默认语言FRIENDICA_SITENAME:网站名称FRIENDICA_NO_VALIDATION:设为 true 时禁用 URL 及***验证FRIENDICA_DATA:存储提供商名称(例:Filesystem 使用文件系统,默认数据库后端)FRIENDICA_DATA_DIR:数据目录(默认:/var/www/data)FRIENDICA_UPGRADE:设为 true 强制启动 Friendica 更新(默认:false)Friendica 日志
FRIENDICA_DEBUGGING:设为 true 启用日志FRIENDICA_LOGFILE:日志文件路径(默认:/var/www/friendica.log)FRIENDICA_LOGLEVEL:日志级别(默认:notice)FRIENDICA_LOGGER:日志类型(stream、syslog、monolog,默认:stream)FRIENDICA_SYSLOG_FLAGS:syslog 标志(默认:LOG_PID | LOG_ODELAY | LOG_CONS | LOG_PERROR)FRIENDICA_SYSLOG_FACTORY:syslog 工厂(默认:LOG_USER)数据库(安装必需)
MYSQL_USER:数据库用户名(mysql/mariadb)MYSQL_PASSWORD:数据库密码MYSQL_DATABASE:数据库名称MYSQL_HOST:数据库服务器主机名MYSQL_PORT:数据库服务器端口(默认:3306)锁驱动(Redis)
REDIS_HOST:Redis 实例主机名REDIS_PORT:Redis 端口(可选)REDIS_PW:Redis 密码(可选)REDIS_DB:Redis 数据库实例(可选)PHP 限制
PHP_MEMORY_LIMIT:脚本允许分配的最大内存(默认:512M)PHP_UPLOAD_LIMIT:上传限制(post_max_size 及 upload_max_filesize,默认:512M)Friendica 将管理员账户与特定关联,需确保 MAILNAME 设置有效。
使用 ssmtp 二进制文件支持 Friendica 的 mail() 功能,需正确设置 --hostname/-h 参数及以下环境变量:
SMTP:SMTP 邮件网关地址(必需)SMTP_PORT:SMTP 端口(默认:587)SMTP_DOMAIN:发件人域名(必需,例:friendica.local)SMTP_FROM:发件人用户名(默认:no-reply,例:***)SMTP_TLS:使用 TLS 连接 SMTP(默认:空)SMTP_STARTTLS:使用 STARTTLS(默认:On)SMTP_AUTH:SMTP 认证模式(默认:On)SMTP_AUTH_USER:SMTP 用户名(默认:空)SMTP_AUTH_PASS:SMTP 密码(默认:空)STARTTLS 补充说明:tls_starttls 仅支持 On 或 Off,未设置时默认启用,需额外配置。
需将 Friendica 容器加入数据库容器所在网络(例:--network some-network),安装时数据库主机填写 mysql。
Friendica 安装及数据库外数据(文件上传等)存储于***卷 /var/www/html,建议使用命名卷或主机目录挂载以持久化数据:
Friendica 数据卷:
console$ docker run -d \ -v friendica-vol-1:/var/www/html \ --network some-network s390x/friendica
数据库数据卷(MySQL/MariaDB):
console$ docker run -d \ -v mysql-vol-1:/var/lib/mysql \ --network some-network mariadb
通过环境变量可预配置安装页面参数,启用自动安装需设置:
FRIENDICA_URL、FRIENDICA_ADMIN_MAIL、MYSQL_USER、MYSQL_PASSWORD、MYSQL_DATABASE、MYSQL_HOST支持通过环境变量后缀 _FILE 从文件加载敏感信息(如 Docker Secrets),目前支持 FRIENDICA_ADMIN_MAIL、MYSQL_DATABASE、MYSQL_PASSWORD、MYSQL_USER。示例 compose.yaml:
yamlservices: db: image: mariadb restart: always volumes: - db:/var/lib/mysql environment: - MYSQL_DATABASE_FILE=/run/secrets/mysql_database - MYSQL_USER_FILE=/run/secrets/mysql_user - MYSQL_PASSWORD_FILE=/run/secrets/mysql_password secrets: - mysql_database - mysql_password - mysql_user app: image: friendica restart: always volumes: - friendica:/var/www/html ports: - "8080:80" environment: - MYSQL_HOST=db - MYSQL_DATABASE_FILE=/run/secrets/mysql_database - MYSQL_USER_FILE=/run/secrets/mysql_user - MYSQL_PASSWORD_FILE=/run/secrets/mysql_password - FRIENDICA_ADMIN_MAIL_FILE=/run/secrets/friendica_admin_mail depends_on: - db secrets: - friendica_admin_mail - mysql_database - mysql_password - mysql_user volumes: db: friendica: secrets: friendica_admin_mail: file: ./friendica_admin_mail.txt # 管理员邮箱文件 mysql_database: file: ./mysql_database.txt # 数据库名称文件 mysql_password: file: ./mysql_password.txt # 数据库密码文件 mysql_user: file: ./mysql_user.txt # 数据库用户文件
拉取最新镜像:docker pull s390x/friendica。稳定分支在启动时会检查更新,若未找到安装或使用新镜像则自动更新。
使用 apache 镜像及 MariaDB 容器,数据通过卷持久化,无 SSL 加密(适用于代理后端):
yamlservices: db: image: mariadb restart: always volumes: - db:/var/lib/mysql environment: - MYSQL_USER=friendica - MYSQL_PASSWORD= # 需设置密码 - MYSQL_DATABASE=friendica - MYSQL_RANDOM_ROOT_PASSWORD=yes app: image: s390x/friendica restart: always volumes: - friendica:/var/www/html ports: - "8080:80" environment: - MYSQL_HOST=db - MYSQL_USER=friendica - MYSQL_PASSWORD= # 与 db 中一致 - MYSQL_DATABASE=friendica - FRIENDICA_ADMIN_MAIL=root@friendica.local depends_on: - db volumes: db: friendica:
运行 docker compose up -d 后,通过 http://localhost:8080/ 访问。
需配合 Web 服务器(例:nginx),nginx 容器通过 volumes_from 访问 Friendica 静态文件,配置文件 nginx.conf 需挂载至容器:
yamlservices: db: image: mariadb restart: always volumes: - db:/var/lib/mysql environment: - MYSQL_USER=friendica - MYSQL_PASSWORD= # 需设置
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务