环境变量
Hollo是通过环境变量进行配置的。你可以在项目根目录的 .env 文件中设置它们,或者使用Docker的-e
/--env
选项或Railway的环境变量进行设置。
基本设置
PORT
可选 Railway中未使用
服务器监听的端口号。默认为3000。
DATABASE_URL
Railway中未使用
PostgreSQL数据库的URL,例如:postgresql://hollo:password@localhost/hollo
。
SECRET_KEY
Railway中未使用
用于保护会话的密钥。你可以使用以下命令生成一个随机密钥:
TZ
可选
应用程序的时区。
必须是有效的时区标识符,例如:UTC
、America/New_York
、Asia/Shanghai
。
默认是UTC
。
BEHIND_PROXY
可选 Railway中未使用
如果Hollo在反向代理后面,请将此设置为true
。如果你将Hollo放在L7负载均衡器后面(通常应该这样做),请开启此选项。
默认关闭。
ALLOW_PRIVATE_ADDRESS
可选
将此选项设置为true
将禁用 SSRF(服务器端请求伪造)保护。
打开此选项可在本地网络中进行测试。
默认情况下关闭。
附加功能
HOME_URL
可选
如果存在,主页将重定向到此URL。如果未设置,主页将显示实例上的账户列表。
REMOTE_ACTOR_FETCH_POSTS
可选
首次遇到远程用户时,从远程用户获取的最近公开帖子数量。
默认为10
。
TIMELINE_INBOXES
可选
将此设置为true
后,您的时间线就像收件箱一样:
时间线上可见的所有帖子都实际存储在数据库中,而不是在显示时实时过滤。
这对于有大量传入帖子的相对较大的实例非常有用。
从Hollo 0.4.0开始,它还处于实验阶段,可能存在一些错误, 但预计在稳定后将成为未来的默认行为。
默认情况下关闭。
日志和调试
LOG_LEVEL
可选
应用程序的日志级别。可选项有:debug
、info
、warning
、error
和fatal
。
默认是info
。
LOG_QUERY
可选
将此设置为true
以记录SQL查询。
默认关闭。
LOG_FILE
可选
指定要写入结构化日志的文件路径。日志以JSON Lines格式写入。
SENTRY_DSN
可选
Sentry项目的DSN,用于发送错误报告和跟踪信息。
媒体存储
DRIVE_DISK
用于在 Hollo 上存储头像、自定义象形图和其他媒体等文件的磁盘驱动程序。
可以选择 fs
(本地文件系统)或 s3
(S3 兼容对象存储)。
出于向后兼容性考虑,s3
是默认设置,但建议明确设置,因为默认设置将来会被移除。
有关驱动程序的更多信息,请参阅 FlyDrive 文档(英文)。
本地文件系统设置
FS_ASSET_PATH
FS 驱动程序必填
文件在本地文件系统中的存储路径。例如:/var/lib/hollo
。
与 S3 兼容的对象存储设置
ASSET_URL_BASE
S3 驱动程序必填
资产存储的公共 URL 基础,例如:
https://hollo.s3.us-east-1.amazonaws.com
。
S3_REGION
可选
S3兼容对象存储的区域,例如:us-east-1
。在某些非S3服务中,可以省略此项。默认为auto
。
S3_BUCKET
S3 驱动程序必填
S3兼容对象存储的桶名称,例如:hollo
。
S3_ENDPOINT_URL
S3 驱动程序必填
S3兼容对象存储的端点URL,例如:
https://s3.us-east-1.amazonaws.com
。
S3_FORCE_PATH_STYLE
是否强制在S3兼容对象存储中使用路径格式的URL。设置为true
开启,false
关闭。对于非AWS的S3兼容服务非常有用。默认关闭。
AWS_ACCESS_KEY_ID
S3 驱动程序必填
S3兼容对象存储的访问密钥ID。
AWS_SECRET_ACCESS_KEY
S3 驱动程序必填
S3兼容对象存储的访问密钥。