
一个现代化的电子书阅读器,提供优雅的阅读体验和强大的书籍管理功能
bashdocker run -d --name readest -p 3000:3000 aliuq/readest:latest # 测试 docker run --rm --name readest -p 3000:3000 aliuq/readest:latest
访问 http://localhost:3000 即可使用
创建 docker-compose.yml 文件
yamlname: readest services: readest: image: aliuq/readest:latest container_name: readest restart: unless-stopped ports: - '3000:3000'
运行服务:
bashdocker-compose up -d
| 变量名 | 默认值 | 说明 |
|---|---|---|
NEXT_PUBLIC_SUPABASE_URL | N/A | Supabase 数据库配置 |
NEXT_PUBLIC_SUPABASE_ANON_KEY | N/A | Supabase 数据库配置 |
NEXT_PUBLIC_STORAGE_FIXED_QUOTA | 0 | - |
NEXT_PUBLIC_API_BASE_URL | - | - |
NEXT_PUBLIC_POSTHOG_KEY | N/A | 遥测数据收集 |
NEXT_PUBLIC_POSTHOG_HOST | N/A | 遥测数据收集 |
NEXT_PUBLIC_OBJECT_STORAGE_TYPE | - | 存储类型,r2, s3 |
关于客户端环境使用到的变量(NEXT_PUBLIC_),有必要说明一下,官方使用的方式,并不适合容器化部署,原因是环境变量在构建镜像的过程中被硬编码到输出目录 .next 下的 js 文件中,导致无法在运行时动态修改
.env.local 和 .env.web 设置的变量,会在构建(next build)时硬编码到输出目录,这不适合容器化方式部署environment 传入的变量,不会 被硬编码到输出目录,但这只适合服务端使用的变量,客户端由于在构建的时候变量不存在,所以会是空值,这会导致一种情况,客户端和服务端使用了不同的配置,且无法修改客户端配置为了解决这个问题,镜像在构建时将上面的7个变量设置为环境变量占位符,然后在构建完成后,使用 envsubst 将输出目录 .next 下的 js 文件中的占位符替换为环境变量的值,从而实现运行时动态配置。但可能随着时间的推移,官方增加或删除某些变量,导致部分失效,如果你有发现问题,请在 issue 中反馈
只有需要在客户端使用的变量,才需要进行处理,服务端使用的变量使用 environment 传入即可,不需要进行占位符替换
遥测数据收集
官方默认使用了 posthog 进行用户行为分析,镜像在构建的时候保留了官方配置,但允许通过环境变量设置,在启动应用的时候进行动态覆盖
如果你不想被收集,请将 NEXT_PUBLIC_POSTHOG_KEY 设置为任意不为空的值,例如 your_posthog_key,这将导致调用 posthog.init 时传入一个无效的 key,从而禁用数据收集
Supabase 配置
自托管 Supabase 不是一个明智的行为,但是你可以使用自己的 Supabase 实例来存储数据,具体的数据库 schema 请参考https://github.com/readest/readest/wiki/Supabase-Tables-Schema-for-Sync-API
建议只在固定某个 readest 镜像版本时使用
bash# 克隆仓库 git clone https://github.com/aliuq/apps-image.git cd apps-image/apps/readest # 构建镜像 docker buildx build -f ./Dockerfile -t readest:local --load . # 运行测试 docker run --rm --name readest-local -p 3000:3000 readest:local
bash# 显示详细构建日志 docker buildx build --progress=plain -f ./Dockerfile -t readest:debug --load .
0.9.88
USE_DEFAULT 环境变量相关内容📝 该文档由 AI 辅助生成并整理,如有问题请随时反馈
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。






探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务