armbian-docker笔记私有化部署-搭建属于自己的私有云笔记

相关网址

  • joplin: Joplin
  • joplin 镜像地址:joplin/server - Docker 镜像
  • joplin 开源项目地址:laurent22/joplin

为什么选择私有云笔记?

与传统的云笔记服务相比,私有云笔记具有以下优势:

  1. 数据安全性:数据完全由自己掌控,不用担心服务商数据泄露
  2. 隐私保护:笔记内容只存储在自己的服务器上,不会被第三方访问
  3. 成本可控:无需支付高额的存储费用,可以根据需求灵活扩展
  4. 功能自定义:可以根据个人需求进行功能定制和优化

为什么选择 Joplin

市面上常见的笔记软件:有 Blossom、思源笔记、为知笔记、Anytype

  • anytype:功能强大 · 颜值高 · 理念先进,可以试下

  • Joplin-优点:

    • 开源免费

    • 支持私有部署

    • 全平台支持(Windows, macOS, Linux, Android, iOS)

    • Markdown 编辑器

    • 端到端加密

    • 插件系统

    • 缺点:界面相对简单,无 web 端

    • 支持搜索,笔记格式是 Markdown(如果你还不知道什么是 Markdown,而你又有记录的需求,强烈你看这个视频来了解这个好用的东东——YouTube 用户点击这个:【如何优雅地写博客系列】Markdown 语法的使用! 国内用户点击这个:如何优雅地写博客系列!Markdown 语法的使用!

    • 支持网页剪裁,可以从你的浏览器中保存网页和截图,也可用于火狐和 Chrome

    • 这个服务器允许你与任何 Joplin 客户端进行同步,就像你与 Dropbox、OneDrive 等进行同步一样。

Joplin Server 部署要求

官方支持情况

Joplin 官方提供了完整的服务器端实现,并支持多种部署方式:

  • Docker 容器化部署(推荐)
  • 源码部署
  • 二进制部署

服务器配置要求

最低配置要求
CPU:1 核
内存:1GB
存储:取决于笔记数量,建议至少 20GB
操作系统:支持 Docker 的任何系统

docker-compose 部署

创建一目录并在目录下新建文件 docker-compose.yml 填入以下内容:

# https://iwanlab.com/docker-compose-install-joplin-server/
# T这是一个示例docker-compose文件,可用于运行Joplin服务器以及PostgreSQL服务器
#
# 更新以下配置节中的字段:
# POSTGRES_USER
# POSTGRES_PASSWORD
# APP_BASE_URL
# APP_BASE_URL:这是服务将运行的基础公共URL。
#
# - 如果需要通过互联网访问Joplin服务器,请按如下方式配置APP_BASE_URL:https://example.com/joplin。
# - 如果不需要通过互联网访问Joplin服务器,请将APP_BASE_URL设置为您的服务器主机名。
# 例如:http://[hostname]:22300。基础URL可以包含端口号。
# APP_PORT:Docker容器将监听的本地端口。
# - 通常,此端口会通过反向代理映射到443端口(TLS)。
# - 如果 Joplin Server 不需要互联网访问,则可以将端口映射到 22300。
# https://hub.docker.com/r/joplin/server
# https://github.com/laurent22/joplin
#
# 以下安装2个镜像:一个是db数据库,另一个是joplin;

version: '3'

services:
db:
container_name: postgres-db
image: postgres:16
volumes:
- ./data/postgres:/var/lib/postgresql/data
ports:
- "5432:5432" # 左边的端口可以更换,右边不要动!
restart: unless-stopped
environment:
- POSTGRES_PASSWORD=changeme # 改成你自己的密码
- POSTGRES_USER=username # 改成你自己的用户名
- POSTGRES_DB=joplin
app:
container_name: joplin
image: joplin/server:latest
depends_on:
- db
ports:
- "22300:22300" # 左边的端口可以更换,右边不要动!
restart: unless-stopped
environment:
- APP_PORT=22300
- APP_BASE_URL=https://xxx.xxxx.top:2053 # 改成反代的域名
- DB_CLIENT=pg
- POSTGRES_PASSWORD=changeme # 与上面的密码对应!
- POSTGRES_DATABASE=joplin
- POSTGRES_USER=username # 与上面的用户名对应!
- POSTGRES_PORT=5432 # 端口与上面右边的对应!
- POSTGRES_HOST=db

查看端口是否被占用(以 5432 为例),输入:

lsof -i:5432  #查看 5432 端口是否被占用,如果被占用,重新自定义一个端口

如果出现:

-bash: lsof: command not found

运行:

apt install lsof  #安装 lsof

如果端口没有被占用,我们接着可以运行:

cd /root/data/docker_data/joplin
docker-compose up -d

卸载

cd /root/data/docker_data/joplin  # 进入 docker-compose 所在的文件夹

docker-compose down # 停止容器,此时不会删除映射到本地的数据

rm -rf /root/data/docker_data/joplin # 完全删除映射到本地的数据

资料链接

免费、开源、全平台同步笔记软件——Joplin | 爱玩实验室

使用 Joplin Server 搭建属于自己的私有云笔记 - 饭饭’s Blog

Invalid origin: http://192.168.50.86:22300 出错问题 ·Laurent22/Joplin