Papermerge 是一个开源文档管理系统(DMS),主要设计用于归档和检索数字文档。无需在桌面、办公室或抽屉里堆放纸质文档,您可以快速扫描它们并配置扫描仪直接上传到Papermerge DMS。
!https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/papermerge-icon.png
LinuxServer.io团队提供的此容器具有以下特点:
我们利用docker清单实现多平台支持。只需拉取 lscr.io/linuxserver/papermerge:latest 即可获取适合您架构的正确镜像,也可以通过标签拉取特定架构的镜像。
此镜像支持的架构:
| 架构 | 可用 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64- |
| arm64 | ✅ | arm64v8- |
| armhf | ✅ | arm32v7- |
默认登录信息为 admin:admin,可通过 [***] 访问web界面。更多信息请访问 papermerge。
如果需要非英语OCR语言支持,可使用 https://github.com/linuxserver/docker-mods/tree/papermerge-multilangocr%E3%80%82
以下是帮助您开始创建容器的示例代码片段。
yaml--- version: "2.1" services: papermerge: image: lscr.io/linuxserver/papermerge:latest container_name: papermerge environment: - PUID=1000 - PGID=1000 - TZ=America/New_York - REDIS_URL= #可选 volumes: - </path/to/appdata/config>:/config - </path/to/appdata/data>:/data ports: - 8000:8000 restart: unless-stopped
bashdocker run -d \ --name=papermerge \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=America/New_York \ -e REDIS_URL= `#optional` \ -p 8000:8000 \ -v </path/to/appdata/config>:/config \ -v </path/to/appdata/data>:/data \ --restart unless-stopped \ lscr.io/linuxserver/papermerge:latest
容器镜像通过运行时传递的参数进行配置(如上所示)。这些参数用冒号分隔,表示 <外部>:<内部>。例如,-p 8080:80 会将容器内的端口 80 暴露出来,可通过主机IP的 8080 端口访问。
| 参数 | 功能 |
|---|---|
-p 8000 | http界面端口 |
-e PUID=1000 | 用户ID - 详见下文说明 |
-e PGID=1000 | 组ID - 详见下文说明 |
-e TZ=America/New_York | 指定使用的时区,例如 America/New_York |
-e REDIS_URL= | 指定要使用的外部redis实例。可选择包含端口(redis:6379)和/或数据库(redis/foo)。如果留空或不包含,将使用内置的redis实例。如果在初始设置后更改,还需要手动修改 /config/settings.py |
-v /config | 包含所有相关配置文件 |
-v /data | 所有papermerge数据文件的存储位置 |
您可以通过使用特殊的前缀 FILE__ 从文件中设置任何环境变量。
例如:
bash-e FILE__PASSWORD=/run/secrets/mysecretpassword
这将根据 /run/secrets/mysecretpassword 文件的内容设置环境变量 PASSWORD。
对于我们所有的镜像,您可以使用可选的 -e UMASK=022 设置来覆盖容器内启动的服务的默认umask设置。请注意,umask不是chmod,它根据其值减去权限,而不是添加。请在请求支持前阅读 此处。
使用卷(-v 标志)时,主机操作系统和容器之间可能会出现权限问题,我们通过允许您指定用户 PUID 和组 PGID 来避免此问题。
确保主机上的任何卷目录都由您指定的相同用户拥有,任何权限问题都会像魔术一样消失。
在这种情况下 PUID=1000 和 PGID=1000,要找到您的ID,请使用 id user,如下所示:
bash$ id username uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=papermerge&query=%24.mods%5B%27papermerge%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml]([] "查看此容器的可用mods") https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=universal&query=%24.mods%5B%27universal%27%5D.mod_count&url=https%3A%2F%2Fraw.githubusercontent.com%2Flinuxserver%2Fdocker-mods%2Fmaster%2Fmod-list.yml]([] "查看可用的通用mods")
我们发布了各种 https://github.com/linuxserver/docker-mods%EF%BC%8C%E4%BB%A5%E5%90%AF%E7%94%A8%E5%AE%B9%E5%99%A8%E5%86%85%E7%9A%84%E9%99%84%E5%8A%A0%E5%8A%9F%E8%83%BD%E3%80%82%E5%8F%AF%E9%80%9A%E8%BF%87%E4%B8%8A%E6%96%B9%E7%9A%84%E5%8A%A8%E6%80%81%E5%BE%BD%E7%AB%A0%E8%AE%BF%E9%97%AE%E6%AD%A4%E9%95%9C%E5%83%8F%E5%8F%AF%E7%94%A8%E7%9A%84Mods%E5%88%97%E8%A1%A8%EF%BC%88%E5%A6%82%E6%9C%89%EF%BC%89%E4%BB%A5%E5%8F%8A%E5%8F%AF%E5%BA%94%E7%94%A8%E4%BA%8E%E6%88%91%E4%BB%AC%E4%BB%BB%E4%BD%95%E9%95%9C%E5%83%8F%E7%9A%84%E9%80%9A%E7%94%A8Mods%E3%80%82
docker exec -it papermerge /bin/bashdocker logs -f papermergedocker inspect -f '{{ index .Config.Labels "build_version" }}' papermergedocker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/papermerge:latest我们的大多数镜像是静态的、版本化的,需要更新镜像并重新创建容器才能更新内部的应用。除了一些例外(如nextcloud、plex),我们不建议或支持在容器内更新应用。请参考上面的 应用设置 部分,了解是否推荐对此镜像进行应用更新。
以下是更新容器的说明:
docker-compose pull
docker-compose pull papermergedocker-compose up -d
docker-compose up -d papermergedocker image prunedocker pull lscr.io/linuxserver/papermerge:latestdocker stop papermergedocker rm papermerge/config 文件夹和设置将被保留)docker image prune拉取最新标签的镜像并在一次运行中替换具有相同环境变量的容器:
bashdocker run --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower \ --run-once papermerge
您还可以删除旧的悬空镜像:docker image prune
注意: 我们不认可使用Watchtower作为现有Docker容器自动更新的解决方案。事实上,我们通常不鼓励自动更新。但是,对于您忘记原始参数的容器,这是一个有用的一次性手动更新工具。从长远来看,我们强烈建议使用 Docker Compose。
如果您想对这些镜像进行本地修改以用于开发目的或自定义逻辑:
bashgit clone https://github.com/linuxserver/docker-papermerge.git cd docker-papermerge docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/papermerge:latest .
可以使用 multiarch/qemu-user-static 在x86_64硬件上构建ARM变体:
bashdocker run --rm --privileged multiarch/qemu-user-static:register --reset
注册后,您可以使用 -f Dockerfile.aarch64 指定要使用的dockerfile。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。



探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 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
新手拉取配置
镜像合规机制
不支持 push
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务