前言
为知笔记前段时间突然发布了docker镜像,用户可以自己用docker镜像搭建自己的为知笔记,搭建的笔记可以支持网页访问客户端访问,还是挺让人动心的,然后照着教程搭建了一下,这段时间有点时间,升级了一下然后写个教程总结一下。
具体步骤
安装
首选服务器安装docker,官方文档关于win,mac
写的挺详细的,Linux
用户自行安装把,在这不再赘述。
安装docker之后,需要用命令进行创建容器。
docker run --name wiz -it -d -v ~/wizdata:/wiz/storage -p 3000:80 -e SEARCH=true wiznote/wizserver
~/wizdata
这是用于保存数据的文件夹,你可以自定义,将来迁移数据保存这个文件夹就行。
3000端口可以设置称自己定义,SEARCH=true
代表你开启笔记的全文检索功能,笔记的搜索功能是用java
实现的,占用内存比较高,内存小的机子慎用吧,不想开启运行时去掉就行。
然后经过等待,就可以登录,初次登录账号是admin@wiz.cn
,密码是123456
网址访问http:你的ip:3000
即可登录。
比较诟病的一点是,一开始的docker版本登录账号可以修改,现在起码博主在写这篇博客时的这个版本,账号就不能修改,比较二了就。不过这个版本支持https,也算是好事。
升级
docker stop wiz
docker rm wiz
docker pull wiznote/wizserver:latest
docker run --name wiz -it -d -v ~/wizdata:/wiz/storage -p 3000:80 -e SEARCH=true wiznote/wizserver
只要 ~/wizdata
保存的没问题,数据就能在新版本中访问。
配置反向代理
我是用的nginx,所以只有nginx的配置文件了。
server
{
server_name wiznote.denry.cn;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
#REWRITE-END
#禁止访问的文件或目录
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
proxy_pass http://127.0.0.1:3000;
error_log off;
access_log off;
}
location ~ .*\.(js|css)$ {
proxy_pass http://127.0.0.1:3000;
}
}
最下面的两个location
这是把访问当前域名的请求,也反向代理到笔记的运行的ip:端口号,没这两个配置,就会导致网站没样式,笔记插入的图片也会显示不正常。
配置https
https官方文档在此,一开始踩了一些坑,http访问没问题,https访问就出错,表现在新建笔记失败,新建笔记失败那还玩啥,查了查查到了官方文档。
需要修改如下:
如果您的nginx
有多层,那么,您可能还需要额外的配置: 在http 模块(nginx.conf里面)
中加入以下配置:
http {
map $http_x_forwarded_proto $thescheme {
default $scheme;
https https;
}
...
}
网站对应的conf文件
server
{
listen 80;
listen 443 ssl http2;
server_name wiznote.denry.cn;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $thescheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto "https";
}
#REWRITE-END
if ($server_port !~ 443){
rewrite ^(/.*)$ https://$host$1 permanent;
}
#HTTP_TO_HTTPS_END
ssl_certificate /www/server/panel/vhost/cert/wiznote.denry.cn/fullchain.pem;
ssl_certificate_key /www/server/panel/vhost/cert/wiznote.denry.cn/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
error_page 497 https://$host$request_uri;
#禁止访问的文件或目录
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
#一键申请SSL证书验证目录相关设置
location ~ \.well-known{
allow all;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
proxy_pass http://127.0.0.1:3000;
error_log off;
access_log off;
}
location ~ .*\.(js|css)$ {
proxy_pass http://127.0.0.1:3000;
}
}
除了证书,就是比http
加了多加了两条,修改了nginx.conf
然后https就可以完美使用了,新建笔记失败也消失了。完美运行,很好用了。
结语
为知笔记算是国内的做的不错的,定价也很低,的确很良心了。就是贴吧现在一堆bug反应没人管,不充值会员也没办法同步笔记比较6,docker版本现在5用户以下免费,感兴趣的可以去看看官方定价,并且使用网页微信收藏需要购买许可。
还有就是运行吃内存,是隔壁leanote好几倍了,并且markdown支持也不好。
不过官方免费放出来让你用了,要啥自行车,日常用一段时间在做补充。
3 条评论
情感真挚自然,字里行间传递出强烈的感染力。
意象选取精妙,营造出空灵意境。
::funny:04::