绿联NAS:搭建Blossom,一个支持私有部署的云端双链笔记软件

绿联NAS:搭建Blossom,一个支持私有部署的云端双链笔记软件

一、项目介绍

Blossom 是一个支持私有部署的云端双链笔记软件,你可以将你的笔记,图片,个人计划安排保存在自己的服务器中,并在任意设备之间实时同步。同时还是一个动态博客。

支持 Windows,Mac,网页客户端,网页移动端。

image

二、绿联docker compose教程

请参考:玩转绿联NAS:小白入坑之如何使用Docker compose搭建项目?-蓝小白的知识笔记

三、搭建教程

1、新建项目-粘贴docker compose;

# ============================================================
# Docker Compose 配置文件 - Blossom 笔记应用
# 版本: 3.8
# 说明: 包含后端服务 (blossom) 和 MySQL 数据库 (blmysql)
# 使用相对路径挂载数据,便于迁移和备份
# ============================================================

version: "3.8"

# -------------------- 网络定义 --------------------
# 创建自定义桥接网络,使服务之间可通过容器名互相访问
networks:
  blossomnet:
    driver: bridge

# -------------------- 服务定义 --------------------
services:

  # =============================================
  # 1. Blossom 后端服务
  # =============================================
  blossom:
    # 使用官方最新镜像
    image: jasminexzzz/blossom:latest
    container_name: blossom-backend
    restart: always          # 总是自动重启

    # ---------- 端口映射 ----------
    # 【修改】宿主机端口改为 19999,容器内仍为 9999
    ports:
      - "19999:9999"

    # ---------- 数据卷挂载 ----------
    # 【修改】将宿主机相对路径 ./bl/ 映射到容器内 /home/bl/(图片存储目录)
    volumes:
      - ./bl/:/home/bl/

    # ---------- 环境变量 ----------
    # 所有 Spring Boot 配置项
    environment:
      # ----- 数据库连接 -----
      # 使用容器名 blmysql 访问 MySQL(网络内互通)
      SPRING_DATASOURCE_URL: jdbc:mysql://blmysql:3306/blossom?useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true&allowMultiQueries=true&useSSL=false&&serverTimezone=GMT%2B8
      # 【修改】数据库用户名(与 MySQL 保持一致)
      SPRING_DATASOURCE_USERNAME: root
      # 【修改】数据库密码(与 MySQL 保持一致)
      SPRING_DATASOURCE_PASSWORD: jasmine888

      # ----- 图片访问域名 -----
      # 【修改】图片生成后的访问基础 URL,必须以 /pic/ 结尾
      # 注意端口需与映射的宿主机端口一致(19999)
      PROJECT_IAAS_BLOS_DOMAIN: http://localhost:19999/pic/

      # ----- 图片存储路径(容器内)-----
      # 该路径需与 volumes 中挂载的容器内路径一致
      PROJECT_IAAS_BLOS_DEFAULT-PATH: /home/bl/img/

    # ---------- 健康检查 ----------
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9999/sys/alive"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 5s

    # ---------- 依赖关系 ----------
    # 等待 MySQL 服务健康后再启动
    depends_on:
      blmysql:
        condition: service_healthy

    # 加入自定义网络
    networks:
      - blossomnet


  # =============================================
  # 2. MySQL 数据库服务
  # =============================================
  blmysql:
    image: mysql:8.0.31
    container_name: blossom-mysql
    # 重启策略:非正常退出时最多重试 3 次
    restart: on-failure:3

    # ---------- 端口映射 ----------
    # 映射宿主机 3306 端口(若本地已有 MySQL 可改左侧端口)
    ports:
      - "3306:3306"

    # ---------- 数据卷挂载 ----------
    # 【修改】使用相对路径持久化 MySQL 数据、日志和临时文件
    volumes:
      - ./mysql/data:/var/lib/mysql        # 数据库文件
      - ./mysql/log:/var/log/mysql         # 错误日志
      - ./mysql/mysql-files:/var/lib/mysql-files   # 导入导出临时目录

    # ---------- 环境变量 ----------
    environment:
      # 启动时自动创建的数据库名称
      MYSQL_DATABASE: blossom
      # 【修改】Root 密码(必须与 blossom 服务的密码一致)
      MYSQL_ROOT_PASSWORD: jasmine888
      # 字符集和时区
      LANG: C.UTF-8
      TZ: Asia/Shanghai

    # ---------- 健康检查 ----------
    # 使用 mysqladmin ping 检测 MySQL 是否可响应
    healthcheck:
      test: ["CMD", "mysqladmin", "-uroot", "-pjasmine888", "ping", "-h", "localhost"]
      interval: 10s
      timeout: 3s
      retries: 12      # 给数据库足够启动时间

    # 加入自定义网络
    networks:
      - blossomnet

image

2、点击立即部署,等待完成;

image

3、打开浏览器,访问客户端,在浏览器中输入以下地址(如果是在服务器上部署,请把 localhost 换成你的服务器 IP 或域名):

http://localhost:19999/editor/#/settingindex

image

4、使用默认账号登录,登录页面会要求输入用户名和密码,根据启动日志提示,初始默认账号密码为:

用户名:blos
密码:blos

5、配置服务器地址;

image

6、博客配置中需要正确配置文章查看地址,并点击访问博客验证下是否可以查看;

如:http://192.168.200.200:19999/blog/#/articles?articleId=

image

7、务必修改下个人信息和账号密码;

image

image

image

image

8、功能页展示(未配置天气api会有报错提醒,可根据需求进行配置);

image

image

image

image

image

image

9、此时就完成了,可以愉快的玩耍了🤩。

四、参考文档

1、项目:https://gitee.com/blossom-editor/blossom

2、部署:https://gitee.com/blossom-editor/blossom/tree/dev/docker

3、客户端下载:https://github.com/blossom-editor/blossom/releases

五、外网访问注意事项(如需从其他设备访问)

1、如果你的电脑/服务器有公网 IP 或绑定了域名,请务必做两件事:

  • 放行端口:确保服务器防火墙(如 iptables、firewalld)或云服务器安全组放行了 19999 端口(TCP)。
  • 替换地址:在客户端登录时,将 localhost 换成你的实际 IP 或域名,例如:
客户端:http://192.168.200.200:19999/editor/#/settingindex

博客端:http://192.168.200.200:19999/blog/#/home

2、登录后的初始设置(强烈建议)

  • 修改密码(安全第一):在账户安全设置中,将默认密码 blos 改为自己的强密码。
  • 确认图片存储路径(可选):由于你已经在 docker-compose.yml 中配置了PROJECT_IAAS_BLOS_DOMAIN 和存储路径,这里通常不需要再修改。
  • 如果需要外网访问图片,记得把 http://localhost:19999/pic/ 改成你的公网 IP 或域名(否则其他人看到的图片会裂开)。
  • 设置博客名称与个人资料:在“博客设置”中填写你的博客标题、副标题、头像等信息,这些会显示在博客端页面上。
© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享