什么是Blossom
按照官方给出的定义,Blossom是
一个需要私有部署的笔记软件,虽然本身定位是一个云端软件,但你仍然可以在本地部署,数据和图片都将保存在你的设备,不依赖任何的图床或者对象存储。
所以其实Blossom是一个私有部署的笔记软件,我个人很喜欢这款笔记的界面,同时私有部署也让我觉得逼格提升了很多hhh(当然如果要说隐私安全的话也是更有保障),期待作者的下一个版本更新🤗
官方部署方式
官方提供很多种部署方式,首先我先介绍一下使用Docker compose的方式要怎么部署,我使用的docker版本为 25.0.1
。
DockerCompose
# 进入要存放docker部署内容的目录
cd xxx
# 创建blossom文件夹用于存放部署内容
mkdir -p blossom/data && cd blossom
# 创建docker-compose.yml文件
touch docker-compose.yml
docker-compose.yml
官方提供的文件内容,但有部分内容需要手动修改。
version: "3.8"
networks:
blossomnet:
driver:
bridge
services:
blossom:
image: jasminexzzz/blossom:latest
container_name: blossom-backend
volumes:
# 【需修改】
# 将冒号(:)前的部分改成你运行 docker 的设备的某个路径,不要修改冒号后面的内容。
# 如果是windows环境,可以使用/c/home/bl/img/来指定磁盘
- /d/blossom/bl/:/home/bl/
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://blmysql:3306/blossom?useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true&allowMultiQueries=true&useSSL=false&&serverTimezone=GMT%2B8
SPRING_DATASOURCE_USERNAME: root
# 【可选修改】配置数据库密码,这个改了下方的黄色部分也要修改
SPRING_DATASOURCE_PASSWORD: jasmine888
ports:
- "9999:9999"
networks:
- blossomnet
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9999/sys/alive"]
interval: 30s
timeout: 10s
retries: 3
start_period: 5s
restart: always
depends_on:
blmysql:
condition: service_healthy
blmysql:
image: mysql:8.0.31
container_name: blossom-mysql
restart: on-failure:3
volumes:
# 【需修改】将冒号(:)前的部分改成你运行 docker 的设备的某个路径,不要修改冒号后面的内容。
- /d/blossom/Docker/mysql/data:/var/lib/mysql
- /d/blossom/Docker/mysql/log:/var/log/mysql
- /d/blossom/Docker/mysql/mysql-files/log:/var/lib/mysql-files
environment:
MYSQL_DATABASE: blossom
# 【可选修改】这个改了上方的黄色部分也要修改。需要与 services.blossom.environment.SPRING_DATASOURCE_PASSWORD 相同
MYSQL_ROOT_PASSWORD: jasmine888
LANG: C.UTF-8
TZ: Asia/Shanghai
ports:
- "3306:3306"
networks:
- blossomnet
healthcheck:
# 【可选修改】如果修改了上方的数据库密码「MYSQL_ROOT_PASSWORD」,下方的 -p 后的密码也要修改
test: ["CMD", "mysqladmin", "-uroot", "-pjasmine888", "ping", "-h", "localhost"]
interval: 10s
timeout: 3s
retries: 12
可以看到需要修改挂载路径,我们将挂载路径修改到刚刚创建的data文件,修改后的文件内容如下。
部署的端口号要注意不要跟虚拟机上已占用的端口重复喽,请按需修改。🫥
version: "3.8"
networks:
blossomnet:
driver:
bridge
services:
blossom:
image: jasminexzzz/blossom:latest
container_name: blossom-backend
volumes:
# 【需修改】
# 将冒号(:)前的部分改成你运行 docker 的设备的某个路径,不要修改冒号后面的内容。
# 如果是windows环境,可以使用/c/home/bl/img/来指定磁盘
- ./data/blossom/bl/:/home/bl/
environment:
SPRING_DATASOURCE_URL: jdbc:mysql://blmysql:3306/blossom?useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true&allowMultiQueries=true&useSSL=false&&serverTimezone=GMT%2B8
SPRING_DATASOURCE_USERNAME: root
# 【可选修改】配置数据库密码,这个改了下方的黄色部分也要修改
SPRING_DATASOURCE_PASSWORD: jasmine888
ports:
- "9999:9999"
networks:
- blossomnet
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9999/sys/alive"]
interval: 30s
timeout: 10s
retries: 3
start_period: 5s
restart: always
depends_on:
blmysql:
condition: service_healthy
blmysql:
image: mysql:8.0.31
container_name: blossom-mysql
# restart: on-failure:3
restart: always
volumes:
# 【需修改】将冒号(:)前的部分改成你运行 docker 的设备的某个路径,不要修改冒号后面的内容。
- ./data/mysql/data:/var/lib/mysql
- ./data/mysql/log:/var/log/mysql
- ./data/mysql/mysql-files/log:/var/lib/mysql-files
environment:
MYSQL_DATABASE: blossom
# 【可选修改】这个改了上方的黄色部分也要修改。需要与 services.blossom.environment.SPRING_DATASOURCE_PASSWORD 相同
MYSQL_ROOT_PASSWORD: jasmine888
LANG: C.UTF-8
TZ: Asia/Shanghai
ports:
- "3306:3306"
networks:
- blossomnet
healthcheck:
# 【可选修改】如果修改了上方的数据库密码「MYSQL_ROOT_PASSWORD」,下方的 -p 后的密码也要修改
test: ["CMD", "mysqladmin", "-uroot", "-pjasmine888", "ping", "-h", "localhost"]
interval: 10s
timeout: 3s
retries: 12
回到blossom目录继续执行启动命令
docker compose up -d
看到服务启动成功。(镜像包已经拉取过了,不在此处展示)
排除异常
如果服务启动失败或客户端连接不上,可以查看一下容器的日志。
docker compose logs -f blossom
如果服务启动一切正常就说明大概率是访问的端口出问题了。
通过浏览器访问
浏览器访问IP:9999,由于我部署的端口是8787,请大家忽略。
页面会自动跳转到登录界面,在登录框上面的服务器地址栏内填写访问地址。输入默认的 账号:blos 密码:blos
点击 Login
,登录成功后进入主页,至此Blossom的Docker Compose部署落幕🥳
Blossom内的详细使用方法详见官方文档,如果有疑问的地方,在评论区留言,我会抽空解答的😏(其实我平时超忙的)
其他部署方式
待更新....😈忙的没精力更新完啊啊啊
评论区