转自:基于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