前言
私有图床可使用云服务商提供的付费对象存储服务,当然也可以自己轻松搭建对象存储服务,搭建步骤可参考前序笔记MinIO Docker一键部署指南:构建私有对象存储
typora是一款主流的markdown文件编辑器,picgo是一款开源图床上传客户端,在各类插件的支持下可像绝大部分对象存储服务上传图片并返回连接;typora可直接与picgo无缝集合,实现typora里编写笔记时插入的本地图片或网络图片自动上传到所设置的图床
本文将以自建的minio对象存储服务(可替换为其他存储方案)作为图床,使用git同步管理笔记,使用typora与picgo结合使用作为客户端笔记编写工具,带领大家构建一个多端同步md笔记编写平台
1.对象存储设置
本文以minio为例,若使用云服务商对象存储操作也是一致的,即先创建空间,再生成accesskey
创建存储空间
存储空间是我们上传图片的存储位置,很多云对象存储还能创建子文件夹
生成accesskey
生成accesskey时请务必保存好key和secret,secret在页面关闭后将不再展示,该对密钥为上传图片时身份校验所必须的
2.picgo设置
下载picgo
前往picgo官方github下载最新设备对应版本软件并安装
安装minio插件
打开软件,在插件设置内搜索minio插件并安装
配置minio上传信息
安装图片压缩插件(可选)
由于对象存储流量和空间都很宝贵,为此我们可在picgo内安装压缩插件,大幅缩小图片大小
- 安装compress插件
2.配置插件,选择压缩方法,webp压缩程度很大但会有损;tinypng压缩程度也较大,但需要配置apikey,其apikey每个月免费压缩500张照片,具体可前往tinypng开发者官网免费申请;
!!最后千万不要忘记点击 启用transform,否则图片上传前不会进行压缩!!
3.typora设置
购买下载typora
前往typora官网下载软件,开启免费15天使用,目前存在一些简单的破解方法但不建议大家使用盗版软件
设置图片上传逻辑
打开 设置-图片按照如下设置即可,最后点击验证图片上传选项会像对象存储上传两张照片用于测试
4.git实现笔记多设备同步与备份(可选)
若存在多设备同步笔记或者笔记备份需求,可使用git对笔记文件进行管理并上传github等平台
请先完成git安装、并确认所在地区能否访问github,若无法访问则使用gitee进行替换,操作方法一致
创建远程仓库
以github为例创建远程仓库
初始化仓库
在本地存放md笔记文件夹内启用终端(cmd),运行github所给命令初始化仓库
echo "# test" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin git远程地址 git push -u origin main
- typora配置本地一键上传与同步远程仓库
目前远程git已经配置好,但我们总不能每次更新上传笔记都去手动执行git命令,为此,得益于typora强大的自定义导出功能,我们可以在其导出功能内编写脚本,实现一键上传、下载更新笔记
将导出设置-“通用”-默认导出文件夹设置为"与原文件同一目录下"
创建自定义模板,并命名为“上传github”
将刚创建的“上传github”移动到顶部,并设置git上传指令
mac:
git add . && git commit -m "$(date +%Y%m%d-%H%M%S)" && git push -u origin main
Windows:
git add . && git commit -m "%date:~0,4%-%date:~5,2%-%date:~8,2%-%time:~0,2%-%time:~3,2%-%time:~6,2%" && git push -u origin main
同理创建“从github更新”指令
git pull
使用
至此我们已经通过git命令创建了快捷脚本来进行笔记上传与下载更新,使用时只需要在typora顶部功能栏里点击 文件-导出-上传github/从github更新