当前位置: 首页 > 工具软件 > Joplin > 使用案例 >

基于Joplin和Joplin Server搭建私有云笔记

霍伟彦
2023-12-01

转自:基于Joplin和Joplin Server搭建私有云笔记_代码时光-CSDN博客_joplin server

我们知道,多端同步功能是笔记工具最重要的功能。只有实现了多端同步,我们才能在工作电脑和手机之间无缝切换笔记体验。Joplin 在同步上做得不错,支持 Dropbox、OneDrive 和 AWS s3(当然国内都没法用),支持 WebDAV 协议,也支持自家的 Joplin Server。

本文介绍如何在自己的服务器上搭建 Joplin Server,并配置好 Joplin Desktop 的同步功能。

前置条件

安装docker
创建 Joplin Server 配置文件
创建配置文件,~/docker/joplin/.env:

APP_BASE_URL=https://your-sample-url
APP_PORT=22300
1
2
Joplin Server 推荐使用PostgreSQL数据库,这里直接用 SQLite 数据库(默认)。

创建 Docker Volumes
由于采用了 SQLite 数据库,而 Docker 默认每次运行都会使用隔离的资源,这会导致之前的同步内容丢失。

我们需要考虑数据持久化的问题,创建一个 Volume:

# 创建名为 joplin 的 volume
docker volume create joplin
1
2
下面的命令查看 volume 是否创建成功,可以看到,volumns 文件夹位于 /var/lib/docker 中。

$ docker volume inspect joplin
[
    {
        "CreatedAt": "2021-02-24T09:22:14+08:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/joplin/_data",
        "Name": "joplin",
        "Options": {},
        "Scope": "local"
    }
]
1
2
3
4
5
6
7
8
9
10
11
12
运行 Joplin Serve
下面的命令在后台运行 Joplin Server,名称为 joplin_server,绑定端口为 22300,并把容器的 /home/joplin 绑定到 joplin 这个 volume:

docker run -d --name joplin_server -v joplin:/home/joplin --env-file ~/docker/joplin/.env -p 22300:22300 joplin/server:latest
1
version: '3'

services:
  nginx:
    image: joplin/server:latest
    ports:
      - "22300:22300"
    container_name: joplin_server
    restart: unless-stopped
    # volumes:
    #   - ~/docker/joplin/volume:/home/joplin
    environment:
      - APP_BASE_URL=${APP_BASE_URL}
      - APP_PORT=${APP_PORT}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
使用下面的命令查看运行状态:

$ docker ps -a
CONTAINER ID   IMAGE                  COMMAND                  CREATED      STATUS      PORTS                      NAMES
6074fa330192   joplin/server:latest   "docker-entrypoint.s…"   3 days ago   Up 3 days   0.0.0.0:22300->22300/tcp   joplin_server
1
2
3
使用下面的命令重启容器:

docker container restart joplin_server
1
配置 Nginx
nginx 配置服务器

server {
        server_tokens off;
        root /srv/www/html;
        index index.html index.htm;
        server_name your-domain
        client_max_body_size 100m;

        location / { try_files $uri $uri/ @joplin; }
        location @joplin {
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header Host $http_host;
                proxy_redirect off;
                proxy_pass http://localhost:22300;
        }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16


配置 Joplin Desktop


同步目标选择 Joplin Server。

服务器 URL 保持和 .env 配置文件中的 APP_BASE_URL 配置相同。

Joplin Server 支持多个客户端同步,可以把每个客户端的内容同步到不同的服务器目录。不同的目录可以在 Joplin Server 后台看到。如果你只有一个客户端,那么随便填写一个英文字符串就好。

登录进入 https://your-sample-url/login ,使用默认的账户名 admin@localhost 和密码 admin 登录,然后修改账号和密码即可。
在移动设备上也可以进行相同的设置。移动设备有个「同步状态」功能可以看到当前的同步状态:

————————————————
版权声明:本文为CSDN博主「颯沓如流星」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/monokai/article/details/114009792

 类似资料: