数据库与搜索
这些是 Postgres 数据库和 Meilisearch 索引的变量。默认情况下,镜像自己运行这两者,并自动生成它们的密码:
标准安装不需要设置其中任何一个。它们用于自带数据库或搜索引擎的安装,或者用来调整内置的那两个;
具体步骤见高级部署。它们在面板里都没有对应的设置。
数据库
| 变量 |
默认值 |
作用 |
面板 |
EVEY_EMBEDDED_POSTGRES |
未设置 |
未设置:没有设置 EVEY_DB_HOST 时使用内置数据库,否则使用外部数据库。设为 true 或 false 可以明确决定。由入口脚本读取。 |
无 |
EVEY_POSTGRES_DATA_DIR |
/data/postgres |
内置数据库集群存放的位置。它必须在本地文件系统上,不能在网络共享上。由入口脚本读取。 |
无 |
EVEY_POSTGRES_IMPORT |
/data/postgres-import.sql.gz |
一个用 gzip 压缩的 pg_dump 文件,在内置集群第一次创建时导入,然后改名为 *.imported-<date>。如果集群已经存在,就忽略它,并给出一条提示。由入口脚本读取。 |
无 |
EVEY_DB_HOST |
localhost |
数据库主机。设置了它,内置数据库就会关闭。 |
无 |
EVEY_DB_PORT |
5432 |
数据库端口。 |
无 |
EVEY_DB_USER |
evey |
数据库登录名。如果它是超级用户(内置集群和随附的 compose 文件就是这样),服务器只在恢复备份时使用它,平时以 EVEY_DB_APP_USER 运行。 |
无 |
EVEY_DB_APP_USER |
evey_app |
当 EVEY_DB_USER 是超级用户时,服务器和它的迁移所使用的无特权角色。它在启动时创建,数据库及其中的对象都归它所有,每次启动都会得到一个新的随机密码(不写到任何地方)。这样,即使有 SQL 注入,也无法在主机上运行程序或读取文件。 |
无 |
EVEY_DB_PRIVILEGE_SPLIT |
true |
false 让所有操作都以 EVEY_DB_USER 运行,包括超级用户的操作。这是数据库不接受这种拆分时的备选办法;否则启动会停止,并指出这个变量。 |
无 |
EVEY_DB_NAME |
evey |
数据库名称。 |
无 |
EVEY_DB_PASSWORD |
自动生成 |
密码。使用外部数据库时,如果值是 evey,服务器拒绝启动;如果是 changeme,会给出警告。 |
无 |
EVEY_DB_PASSWORD_FILE |
/data/keys/postgres.password |
存放密码的文件,在没有设置 EVEY_DB_PASSWORD 时读取。由镜像设置。 |
无 |
EVEY_DB_SSLMODE |
本机回环时为 disable,否则为 prefer |
disable、prefer、require 或 verify-full。对远程主机使用 prefer 会记录一条警告:请使用 require 或 verify-full。 |
无 |
EVEY_DB_MAX_OPEN_CONNS |
25 |
打开的数据库连接数。每个连接都会占用 Postgres 端的内存;只有大型部署才需要调高。 |
无 |
EVEY_DB_MAX_IDLE_CONNS |
10 |
连接池里保留的空闲连接数。不会超过打开的连接数。 |
无 |
搜索
| 变量 |
默认值 |
作用 |
面板 |
EVEY_EMBEDDED_MEILI |
true |
false 表示使用 EVEY_MEILI_URL 指向的 Meilisearch,而不是内置的那个。由入口脚本读取。 |
无 |
EVEY_MEILI_URL |
http://localhost:7700 |
Meilisearch 的地址。 |
无 |
MEILI_MASTER_KEY |
自动生成 |
Meilisearch 的密钥。使用外部实例时,密钥为空或是占位值,服务器拒绝启动;密钥少于 16 个字符,会记录一条警告。 |
无 |
MEILI_MASTER_KEY_FILE |
/data/keys/meili.key |
存放密钥的文件,在没有设置 MEILI_MASTER_KEY 时读取。由镜像设置。 |
无 |
MEILI_DATA_DIR |
/data/meili |
内置索引存放的位置。由入口脚本读取。 |
无 |
MEILI_MAX_INDEXING_MEMORY |
约为容器内存的 20 %,至少 128 MiB |
内置的 Meilisearch 建索引时可以使用的内存。它按容器的内存上限计算,而不是按整台机器的内存,这样一次扫描不会耗尽小容器的内存。明确给出的值会原样传递。 |
无 |