热门搜索:
ghcr.io/linuxserver/bookstack

ghcr.io/linuxserver/bookstack:arm64v8-v25.12.8-ls249

ghcr.iolinux/amd64arm64v8-v25.12.8-ls249大小: 未知更新于 2026年5月23日

LinuxServer.io团队为您带来另一个容器版本,其特点包括:

  • 定期且及时的应用更新
  • 简单的用户映射(PGID、PUID)
  • 带有s6 overlay的自定义基础镜像
  • 每周基础操作系统更新,整个LinuxServer.io生态系统共享通用层,以最小化空间占用、停机时间和带宽
  • 定期安全更新

在以下渠道找到我们:

  • 博客 - 关于如何使用我们的容器的所有内容,包括操作指南、观点等更多信息!
  • *** - 与社区和团队进行实时支持/聊天。
  • Discourse - 在我们的社区论坛上发帖。
  • https://github.com/linuxserver - 查看我们所有仓库的源代码。
  • Open Collective - 欢迎通过***或为我们的预算做出贡献来支持我们

https://github.com/linuxserver/docker-bookstack

Bookstack 是一个免费开源的Wiki,旨在创建美观的文档。它配备了简单但功能强大的WYSIWYG编辑器,使团队能够轻松创建详细且有用的文档。

BookStack 基于SQL构建,并为偏好Markdown的用户提供了编辑器,旨在让文档编写从繁琐任务转变为愉快体验。

有关BookStack的更多信息,请访问其网站:[***]

支持的架构

我们利用docker manifest实现多平台支持。更多信息可查看docker文档https://distribution.github.io/distribution/spec/manifest-v2-2/#manifest-list%E5%92%8C%E6%88%91%E4%BB%AC%E7%9A%84%E5%85%AC%E5%91%8A%E6%AD%A4%E5%A4%84%E3%80%82

只需拉取 lscr.io/linuxserver/bookstack:latest 即可获取适合您架构的正确镜像,您也可以通过标签拉取特定架构的镜像。

此镜像支持的架构如下:

架构是否可用标签
x86-64amd64-\
arm64arm64v8-\

应用设置

默认用户名为 ***,密码为 password,通过 http:// :6875 访问容器。

此应用依赖于MariaDB数据库,可以是您已有的数据库或新数据库。如果您还没有,我们提供了镜像:https://github.com/linuxserver/docker-mariadb%E3%80%82

如果您打算在子文件夹反向代理(如我们的SWAG容器或Traefik)后使用此应用,您需要确保 APP_URL 环境变量设置为您的外部域名,否则应用将无法正常工作。

BookStack的文档可在 [***] 找到。

BookStack 文件和目录路径

此容器确保BookStack的某些应用文件和文件夹(如用户文件上传文件夹)保留在 /config 文件夹中,以便在 /config 容器路径作为卷挂载时保持持久化并可访问。在参考BookStack文档时,您可能需要了解这些文件和文件夹相对于非容器化BookStack安装的使用方式。

以下是容器 /config 路径与BookStack安装目录中相对路径的映射:

  • 容器 /config 路径 => BookStack 相对路径
  • /config/www/.env => .env
  • /config/log/bookstack/laravel.log => storage/logs/laravel.log
  • /config/backups/ => storage/backups/
  • /config/www/files/ => storage/uploads/files/
  • /config/www/images/ => storage/uploads/images/
  • /config/www/themes/ => themes/
  • /config/www/uploads/ => public/uploads/

修改 APP_URL

如果在初始安装后修改 APP_URL,您应从主机终端运行以下命令以更新数据库中的URL条目:

docker exec -it bookstack php /app/www/artisan bookstack:update-url ${OLD_URL} ${NEW_URL}

高级用户(完全控制 .env 文件)

如果您希望使用BookStack的额外功能(如电子邮件、LDAP等),您需要设置额外的环境变量,或根据BookStack文档的指导创建自己的 .env 文件。

容器会将示例 .env 文件复制到主机系统的 /config/www/.env 供您使用。

只读操作

此镜像可以在只读容器文件系统下运行。详情请阅读文档。

注意事项

  • /tmp 必须挂载为tmpfs
参数功能
-p 6875:80http/s Web界面。
-e PUID=1000用户ID - 详见下文说明
-e PGID=1000组ID - 详见下文说明
-e TZ=Etc/UTC指定要使用的时区,参见此列表。
-e APP_URL=应用程序的访问协议、IP/URL和端口(例如:http://192.168.1.1:6875https://bookstack.mydomain.com
-e APP_KEY=会话加密密钥。您需要通过 docker run -it --rm --entrypoint /bin/bash lscr.io/linuxserver/bookstack:latest appkey 生成。
-e DB_HOST=数据库实例主机名
-e DB_PORT=3306数据库端口
-e DB_USERNAME=数据库用户
-e DB_PASSWORD=数据库密码(至少4个字符,非字母数字密码必须正确转义。)
-e DB_DATABASE=数据库名称
-e QUEUE_CONNECTION=设置为 database 以启用异步操作(如发送电子邮件或触发Webhook)。参见文档。
-v /config持久化配置文件
--read-only=true以只读文件系统运行容器。请阅读文档。

从文件设置环境变量(Docker secrets)

您可以通过使用特殊前缀 FILE__ 从文件中设置任何环境变量。

例如:

-e FILE__MYVAR=/run/secrets/mysecretvariable

这将根据 /run/secrets/mysecretvariable 文件的内容设置环境变量 MYVAR

运行应用程序的Umask

对于我们所有的镜像,您可以使用可选的 -e UMASK=022 设置来覆盖容器内启动的服务的默认umask设置。
请记住,umask不是chmod,它根据其值减去权限,而不是添加权限。在请求支持之前,请先阅读此处。

用户/组标识符

使用卷(-v 标志)时,主机操作系统和容器之间可能会出现权限问题,我们通过允许您指定用户 PUID 和组 PGID 来避免此问题。

确保主机上的所有卷目录都归您指定的同一用户所有,这样任何权限问题都会神奇地消失。

在此示例中 PUID=1000PGID=1000,要查找您的ID,请使用 id your_user,如下所示:

id your_user

示例输出:

uid=1000(your_user) gid=1000(your_user) groups=1000(your_user)

Docker Mods

我们发布了各种 https://github.com/linuxserver/docker-mods%EF%BC%8C%E4%BB%A5%E5%9C%A8%E5%AE%B9%E5%99%A8%E5%86%85%E5%90%AF%E7%94%A8%E9%A2%9D%E5%A4%96%E5%8A%9F%E8%83%BD%E3%80%82%E5%8F%AF%E7%94%A8%E4%BA%8E%E6%AD%A4%E9%95%9C%E5%83%8F%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%EF%BC%8C%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%E3%80%82

支持信息

  • 容器运行时的Shell访问:
docker exec -it bookstack /bin/bash
  • 实时监控容器日志:
docker logs -f bookstack
  • 容器版本号:
docker inspect -f '{{ index .Config.Labels "build_version" }}' bookstack
  • 镜像版本号:
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/bookstack:latest

更新信息

我们的大多数镜像是静态的、版本化的,需要更新镜像并重新创建容器才能更新内部的应用程序。除某些例外情况(在相关readme.md中注明),我们不建议或支持在容器内更新应用程序。请参考上文的应用程序设置部分,了解是否推荐对此镜像进行更新。

以下是更新容器的说明:

通过Docker Compose

  • 更新镜像:
  • 所有镜像:
docker-compose pull
  • 单个镜像:
docker-compose pull bookstack
  • 更新容器:
  • 所有容器:
docker-compose up -d
  • 单个容器:
docker-compose up -d bookstack
  • 您还可以删除旧的悬空镜像:
docker image prune

通过Docker Run

  • 更新镜像:
docker pull lscr.io/linuxserver/bookstack:latest
  • 停止运行中的容器:
docker stop bookstack
  • 删除容器:
docker rm bookstack
  • 使用上述相同的docker run参数重新创建新容器(如果正确映射到主机文件夹,您的 /config 文件夹和设置将被保留)
  • 您还可以删除旧的悬空镜像:
docker image prune

镜像更新通知 - Diun(Docker镜像更新通知器)

[!TIP] 我们推荐使用 Diun 接收更新通知。不推荐或支持使用其他工具自动无人值守更新容器。

本地构建

如果您想对这些镜像进行本地修改以用于开发目的或自定义逻辑:

git clone https://github.com/linuxserver/docker-bookstack.git
cd docker-bookstack
docker build \
--no-cache \
--pull \
-t lscr.io/linuxserver/bookstack:latest .

可以使用 lscr.io/linuxserver/qemu-static 在x86_64硬件上构建ARM变体,反之亦然:

docker run --rm --privileged lscr.io/linuxserver/qemu-static --reset

注册后,您可以使用 -f Dockerfile.aarch64 指定要使用的Dockerfile。

  • 29.04.26: - 切换为从 Codeberg 拉取发布版本。
  • 28.12.25: - 基于 Alpine 3.23 重新构建。
  • 05.07.25: - 基于 Alpine 3.22 重新构建。
  • 04.01.25: - 添加 php-opcache。
  • 17.12.24: - 基于 Alpine 3.21 重新构建。
  • 11.10.24: - 默认使用环境配置而非 .env 文件配置。
  • 06.09.24: - 添加 php-exif 以读取图片 EXIF 数据。
  • 27.05.24: - 基于 Alpine 3.20 重新构建。现有用户应更新其 nginx 配置以避免 http2 弃用警告。
  • 25.01.24: - 现有用户应更新:site-confs/default.conf - 清理默认站点配置。
  • 23.12.23: - 基于 Alpine 3.19 和 php 8.3 重新构建。
  • 31.10.23: - 进一步清理 sed 替换。
  • 07.06.23: - 添加 mariadb-client 以支持 bookstack-system-cli。
  • 25.05.23: - 基于 Alpine 3.18 重新构建,弃用 armhf。
  • 13.04.23: - 将 ssl.conf 包含移至 default.conf。
  • 01.03.23: - 添加 php iconv。
  • 19.01.23: - 基于 alpine 3.17 和 php8.1 重新构建。
  • 16.01.23: - 将 .env 值用引号包裹。
  • 05.01.23: - 修复数据库密码设置(sed 转义 &)。
  • 21.12.22: - 当环境变量更新时,更新 .env 文件中的数据库信息。
  • 10.10.22: - 移除导致部分用户出现问题的密码转义逻辑。
  • 20.08.22: - 基于 alpine 3.15 和 php8 重新构建。重构 nginx 配置(参见变更公告)。
  • 14.03.22: - 添加符号链接以支持主题。
  • 11.07.21: - 基于 Alpine 3.14 重新构建。
  • 12.01.21: - 从 0.31.0 版本开始,移除未使用的依赖项。
  • 17.12.20: - 使 APP_URL 变量成为必填项(上游变更)。
  • 17.09.20: - 基于 alpine 3.12 重新构建。修复 APP_URL 设置。默认将 php post 最大大小和上传最大文件大小提升至 100MB。
  • 19.12.19: - 基于 alpine 3.11 重新构建。
  • 26.07.19: - 在等待上游修复期间使用旧版本的 tidyhtml。
  • 28.06.19: - 基于 alpine 3.10 重新构建。
  • 14.06.19: - 添加 wkhtmltopdf 到镜像以支持 PDF 渲染。
  • 20.04.19: - 基于 Alpine 3.9 重新构建,添加 MySQL 初始化逻辑。
  • 22.03.19: - 切换到新的基础镜像,迁移至 arm32v7 标签。
  • 20.01.19: - 添加 php7-curl
  • 04.11.18: - 添加 php7-ldap
  • 15.10.18: - 更改高级用户的功能
  • 08.10.18: - 高级模式、符号链接更改、sed 修复、文档更新、添加部分 composer 文件
  • 23.09.28: - 更新预发布版本
  • 02.07.18: - 初始发布。

镜像拉取常见问题

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

镜像拉取问题咨询请 提交工单。官方公众号:源码跳动。官方技术交流群:51517718。轩辕镜像所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。