本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
Bookstack 是一款免费开源的Wiki系统,旨在创建美观的文档。它提供简洁而强大的WYSIWYG编辑器,使团队能够轻松创建详细实用的文档。该镜像由LinuxServer.io团队维护,具备定期更新、用户权限映射、自定义基础镜像等特性,确保应用稳定运行与便捷管理。
该镜像利用Docker manifest实现多平台支持,拉取lscr.io/linuxserver/bookstack:latest将自动获取适合您架构的镜像,也可通过标签指定特定架构:
| 架构 | 支持情况 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64-<version tag> |
| arm64 | ✅ | arm64v8-<version tag> |
| armhf | ❌ |
默认用户名为***,密码为password,通过[***]访问容器。
应用依赖MySQL数据库(可使用现有数据库或新建),推荐搭配LinuxServer的MariaDB容器:linuxserver/mariadb。
若在子文件夹反向代理(如SWAG或Traefik)后使用,需设置APP_URL环境变量为外部域名,否则可能无法正常工作。
容器将BookStack的关键文件/目录持久化到/config卷中,以下为容器路径与标准BookStack安装路径的映射关系:
| 容器路径 | BookStack相对路径 |
|---|---|
/config/www/.env | .env |
/config/www/laravel.log | storage/logs/laravel.log |
/config/www/backups/ | storage/backups/ |
/config/www/files/ | storage/uploads/files/ |
/config/www/images/ | storage/uploads/images/ |
/config/www/themes/ | themes/ |
/config/www/uploads/ | public/uploads/ |
如需使用邮件、Memcache、LDAP等高级功能,需参考BookStack文档创建自定义.env文件。创建容器时不要设置任何SQL相关环境变量,容器会自动复制示例.env文件到/config/www/.env,供用户编辑。
--- version: "2" services: bookstack: image: lscr.io/linuxserver/bookstack container_name: bookstack environment: - PUID=1000 - PGID=1000 - APP_URL=[***] - DB_HOST=bookstack_db - DB_PORT=3306 - DB_USER=bookstack - DB_PASS=<yourdbpass> - DB_DATABASE=bookstackapp volumes: - ./bookstack_app_data:/config ports: - 6875:80 restart: unless-stopped depends_on: - bookstack_db bookstack_db: image: lscr.io/linuxserver/mariadb container_name: bookstack_db environment: - PUID=1000 - PGID=1000 - MYSQL_ROOT_PASSWORD=<yourdbpass> - TZ=Europe/London - MYSQL_DATABASE=bookstackapp - MYSQL_USER=bookstack - MYSQL_PASSWORD=<yourdbpass> volumes: - ./bookstack_db_data:/config restart: unless-stopped
docker run -d \ --name=bookstack \ -e PUID=1000 \ -e PGID=1000 \ -e TZ=Etc/UTC \ -e APP_URL=yourbaseurl \ -e DB_HOST=yourdbhost \ -e DB_PORT=yourdbport \ -e DB_USER=yourdbuser \ -e DB_PASS=yourdbpass \ -e DB_DATABASE=bookstackapp \ -e QUEUE_CONNECTION= `#可选` \ -p 6875:80 \ -v /path/to/data:/config \ --restart unless-stopped \ lscr.io/linuxserver/bookstack:latest
容器运行时通过参数配置,格式为<外部>:<内部>:
| 参数 | 功能 |
|---|---|
-p 80 | 将容器内80端口映射到主机的6875端口 |
-e PUID=1000 | 用户ID,详见下文用户/组标识符说明 |
-e PGID=1000 | 组ID,详见下文用户/组标识符说明 |
-e TZ=Etc/UTC | 指定时区,列表参考时区数据库 |
-e APP_URL=yourbaseurl | 应用访问地址(如[***]或[***]) |
-e DB_HOST=yourdbhost | 数据库主机地址 |
-e DB_PORT=yourdbport | 数据库端口(默认3306) |
-e DB_USER=yourdbuser | 数据库用户名 |
-e DB_PASS=yourdbpass | 数据库密码(至少4字符,非字母数字密码需正确转义) |
-e DB_DATABASE=bookstackapp | 使用的数据库名称 |
-e QUEUE_CONNECTION= | 设置为database启用异步操作(如发送邮件、触发webhook),详见文档 |
-v /config | 存储上传数据的持久化目录 |
通过FILE__前缀从文件加载环境变量,例如:
-e FILE__MYVAR=/run/secrets/mysecretvariable
将从/run/secrets/mysecretvariable文件内容设置MYVAR环境变量。
可通过-e UMASK=022覆盖默认umask设置,控制容器内服务的文件权限,详情参考umask说明。
使用卷时,通过PUID(用户ID)和PGID(组ID)避免权限问题。确保主机卷目录所有者与指定ID一致。通过id your_user命令获取当前用户的ID:
id your_user
示例输出:
uid=1000(your_user) gid=1000(your_user) groups=1000(your_user)
可通过Docker Mods扩展功能,查看可用Mods:bookstack Mods 或 通用Mods。
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
docker-compose pulldocker-compose pull bookstackdocker-compose up -ddocker-compose up -d bookstackdocker image prunedocker pull lscr.io/linuxserver/bookstack:latestdocker stop bookstackdocker rm bookstack/config卷映射正确则配置保留)docker image prunedocker run --rm \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower \ --run-once bookstack
清理旧镜像:docker image prune
警告:不推荐使用Watchtower自动更新容器,建议使用Docker Compose管理。
git clone [***] cd docker-bookstack docker build \ --no-cache \ --pull \ -t lscr.io/linuxserver/bookstack:latest .
ARM架构构建(需在x86_64硬件上使用multiarch/qemu-user-static):
docker run --rm --privileged multiarch/qemu-user-static:register --reset
然后使用对应架构Dockerfile:-f Dockerfile.aarch64
&)
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429