IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    诺多发表于 2024-12-20 23:00:22
    love 0

    BookStack

    在这个信息爆炸的时代,你是否经常感到无所适从?团队文档杂乱无章,个人笔记四处散落,重要信息总是找不到...如果这些问题困扰着你,那么 BookStack 可能就是你一直在寻找的解决方案。

    🌟 BookStack:不只是另一个文档系统

    BookStack 是一个开源的知识管理平台,它将文档组织得像一本书一样直观。想象一下,如果维基百科和你最爱的笔记 App 有个孩子,那大概就是 BookStack 了。

    基于 PHP 和 Laravel 构建,BookStack 不仅功能强大,还特别注重用户体验。无论你是技术大牛还是普通用户,都能轻松驾驭。
    BookStack

    💡 为什么选择 BookStack?

    1. 结构清晰:采用"书籍 > 章节 > 页面"的层级结构,让内容组织一目了然。
    2. 编辑灵活:支持所见即所得和 Markdown 编辑器,满足不同偏好。
    3. 权限管理:细粒度的权限控制,完美适配团队协作需求。
    4. 搜索强大:全文搜索功能,让你瞬间找到需要的信息。
    5. 多语言支持:包括中文在内的多种语言界面,无障碍使用。
    6. 导出方便:可以导出html、markdown、txt和pdf格式。
    7. 开源免费:企业级功能,零成本使用。

    🛠 用 Docker 搭建 BookStack

    BookStack 的部署非常简单,特别是使用 Docker 的话。下面我们详细解释如何通过 Docker 部署 BookStack,并对每个参数进行说明。

    方法一:Docker 命令行部署

    docker run -d \
      --name=bookstack \
      -e PUID=1000 \
      -e PGID=1000 \
      -e TZ=Asia/Shanghai \
      -e APP_URL=http://your-domain.com \
      -e APP_KEY=base64:C4MCxJYaoUMj6Rpn2cMmHyycBlU0hizsoDEbOO7w2LQ=
      -e DB_HOST=bookstack_db \
      -e DB_USER=bookstack \
      -e DB_PASS=your_password \
      -e DB_DATABASE=bookstack \
      -p 6875:80 \
      -v /path/to/data:/config \
      --restart unless-stopped \
      lscr.io/linuxserver/bookstack:latest
    

    参数解释:

    • --name=bookstack:为容器指定一个名称,方便管理。
    • -e PUID=1000 和 -e PGID=1000:设置用户和组 ID,确保容器内外的权限一致。
    • -e APP_URL=http://your-domain.com:设置 BookStack 的访问 URL,请替换为你的实际域名。
    • -e APP_KEY=base64:C4MCxJYaoUMj6Rpn2cMmHyycBlU0hizsoDEbOO7w2LQ=:设置 BookStack 会话加密密钥,使用ocker run -it --rm --entrypoint /bin/bash linuxserver/bookstack:latest appkey可以生成一个。
    • TZ=Asia/Shanghai:指定时区,中国的就用这个即可。
    • -e DB_HOST=bookstack_db:数据库主机名,如果使用外部数据库,请相应修改。
    • -e DB_USERNAME=bookstack:数据库用户名。
    • -e DB_PASSWORD=your_password:数据库密码,请使用强密码替换。
    • -e DB_DATABASE=bookstack:数据库名称。
    • -p 6875:80:端口映射,将容器的 80 端口映射到主机的 6875 端口。
    • -v /path/to/data:/config:数据卷挂载,确保数据持久化,请替换为你的实际路径。
    • --restart unless-stopped:容器自动重启策略。

    方法二:Docker Compose 部署

    创建一个 docker-compose.yml 文件,内容如下:

    version: "2"
    services:
      bookstack:
        image: lscr.io/linuxserver/bookstack:latest
        container_name: bookstack
        environment:
          - PUID=501
          - PGID=20
          - TZ=Asia/Shanghai 
          - APP_URL=http://localhost:6875
          - APP_KEY=base64:C4MCxJYaoUMj6Rpn2cMmHyycBlU0hizsoDEbOO7w2LQ=
          - DB_HOST=172.17.0.1
          - DB_PORT=3306
          - DB_USERNAME=root
          - DB_PASSWORD=123456
          - DB_DATABASE=bookstack
        volumes:
          - /path/to/data:/config
        ports:
          - 6875:80
        restart: unless-stopped
        depends_on:
          - bookstack_db
      bookstack_db:
        image: lscr.io/linuxserver/mariadb:latest
        container_name: bookstack_db
        environment:
          - PUID=1000
          - PGID=1000
          - MYSQL_ROOT_PASSWORD=your_root_password
          - TZ=Europe/London
          - MYSQL_DATABASE=bookstack
          - MYSQL_USER=bookstack
          - MYSQL_PASSWORD=your_password
        volumes:
          - /path/to/database:/config
        restart: unless-stopped
    

    这个 docker-compose.yml 文件定义了两个服务:bookstack 和 bookstack_db。参数含义与单独运行 Docker 命令时相同,但这里我们同时部署了一个 MariaDB 数据库容器。

    运行以下命令启动服务:

    docker-compose up -d
    

    这个命令会在后台启动 BookStack 和其数据库,并自动开始初始化数据表。

    🚀 BookStack 使用指南

    成功部署后,访问 http://your-domain.com:6875(替换为你的实际域名和端口)就可以开始使用 BookStack 了,使用默认的账号admin@admin.com和密码password登录。

    BookStack

    以下是一些基本使用步骤:

    1. 设置中文
      点击右上角的头像,找到"My Account > Profile Details",然后在Preferred Language中选择中文即可。

    BookStack

    1. 创建你的第一本"书":
      点击"图书 > 立即创建",给你的第一本书起个名字。
      BookStack

    2. 组织内容:
      按照"书籍 > 章节 > 页面"的结构组织你的内容。
      BookStack

    3. 编写和格式化:
      使用所见即所得编辑器或 Markdown 编辑器创建内容。
      BookStack

    4. 协作与分享:
      邀请团队成员,设置权限,开始协作。
      BookStack

    5. 搜索和标签:
      使用强大的搜索功能和标签系统快速找到信息。
      BookStack

    📝 进阶技巧

    1. 使用模板:为常用文档类型创建模板,提高效率。
    2. 版本控制:利用 BookStack 的版本历史功能,轻松回溯修改。
    3. API 集成:使用 BookStack 的 API 将其与其他工具集成。

    🌈 结语

    BookStack 不仅仅是一个文档系统,它是一个全方位的知识管理解决方案。通过 Docker 的简单部署,你可以快速搭建起自己的知识库,让团队协作更加顺畅,个人学习更加高效。

    现在,你已经了解了如何部署和使用 BookStack。为什么不立即动手,创建你的第一本"书"呢?相信我,当你开始使用 BookStack,你会惊讶于自己生产力的提升。

    原创不易,如果觉得此文对你有帮助,不妨点赞+收藏+关注,你的鼓励是我持续创作的动力!

    高等精灵实验室



沪ICP备19023445号-2号
友情链接