群晖+picgo搭建私有图床

news/2024/10/30 23:22:26/

群晖+picgo搭建私有图床

一、前言

前些天整理了一篇picgo+github搭建图床的教程,可以看这里:如何在Markdown中插入图片并顺利共享
但后续使用的时候遇到了两个问题,一是之前使用的Markdown编辑工具Taio在代码块中编辑#开头的注释时,退格键在一些情况下会将整行都选中,再按一次就全删掉了,对于我这种写东西不顺畅,打字不准确的人来讲,实在是太难受了,我也没想着提issue,直接寻找替代方案;二是GitHub图床毕竟是第三方的,而且我也不清楚目前的使用方式,对网络的要求是否较高。
于是参考两篇博文使用群晖+Picgo搭建个人图床搭配Typora进行Markdown写作以及解决:PicGo插件安装失败,搭建了私有图床。下面介绍一下详细的搭建流程。

二、环境介绍

服务器是群晖220+,系统版本DSM 7.1.1-42962 Update 1(如果有想要购买群晖的朋友,也可以私信我噢),搭建FTP服务,提供图片的存储与读取服务。
我日常使用的终端是一台Apple芯片的Mac OS,PicGo客户端就在这上面进行安装和配置。

三、开整

3.1群晖的配置

  1. 创建共享文件夹www,配置默认即可,若已有请忽略,在共享文件夹www下创建文件夹images
  2. 创建使用FTP服务的用户,设置名称和密码,名称我设置为images,群组默认users即可,共享文件夹访问权限先勾上全部禁止访问,再单独勾上www文件夹的可读写即可,下一步,配额不管,应用程序先勾上全部拒绝,再选择允许FTP即可,速度限制不管,点击下一步,完成
  3. 安装套件Web Station并启动,在网页服务门户中,新增一个虚拟主机,门户类型基于端口,端口可以选择HTTPS并自定义端口号,如999;下一步,文档根目录选择上面创建的images,下一步,下一步,新增,提示http群组需要配置权限,点确定即可
  4. 在控制面板,文件服务中,FTP下,配置如下图,FTP服务所使用的端口编号就填21,被动式FTP端口范围可以自定义,注意红框标出的高级设置中,请勾选更改用户根目录,并点击选择用户,点击新增,选择第2步创建的用户,和第1步创建的共享文件夹,确定,确定,保存,应用
  5. 来试一下,在images文件夹下放入一张图片,并试着访问:https://你的域名:端口号/图片名称,如https://biosyxh.cn:999/ASUS.png,很可能访问是失败的,有两个原因:一是你和群晖在一个局域网中,域名可能无法解析到您的群晖的局域网ip,二是你还需要端口如999暴露到公网中。第一个问题我使用Surge配置本地DNS映射,强制指定我的域名由DNS服务器223.5.5.5来解析,第二个问题请自行解决(路由器的端口映射或者内网穿透等方案均可,仅个人在内网环境下使用,也无需让他人在公网环境访问您的Markdown中的图片的情况下,你可以使用局域网ip而不用域名),下面我假设你已经能通过域名端口和图片名称的形式访问到这张图片。

3.2 PicGo的安装和配置

  1. PicGo 的项目地址请点击这里[Molunerfunn/PicGo](https://github.com/Molunerfinn/PicGo),请自行安装,如果Mac OS系统下提示「文件已损坏」,请根据项目[FAQ](https://github.com/Molunerfinn/PicGo/blob/dev/FAQ.md)中第13步解决,接下来的步骤请根据自身计算机环境操作,我的步骤请仅作为参考
  2. 安装FTP上传插件
    #安装node.js
    brew install node
    #新建目录,并安装PicGo用于FTP上传的插件
    mkdir -p ~/Documents/picgo
    cd ~/Documents/picgo
    npm install picgo-plugin-ftp-uploader
    
  3. 然后打开PicGo的主窗口,点击插件设置,点击右上角的图标,找到上面创建的picgo目录,打开目录node_modules,选择文件夹picgo-plugin-ftp-uploader(不要再双击打开了,选中即可),并点击右下角的打开,然后看到它在转圈,转了好久好久……不管了,直接重启它,提示要访问Documents中的文件,单击好,至此插件就安装好了
  4. 简单配置一下,点击PicGo设置,我选择将快捷键设置为Command+U,开机自启,上传后自动复制URL,使用内置剪贴板上传都打开,显示的图床只保留FTP上传
  5. 在目录picgo下新建一个文件config.json,内容参考如下,其中images作为一个标识,在后续配置中使用,url、host、port请根据自己前边的配置填写,username和password填写之前创建的用户的用户名和密码
    {
    “images”: {
    “url”: “https://biosyxh.cn:999”,
    “path”: “/{year}/{month}/{day}{fullName}",
    “uploadPath”: "/pictureBed/{year}/{month}/{day}
    {fullName}”,
    “host”: “biosyxh.cn”,
    “port”: 21,
    “username”: “images”,
    “password”: “*******”
    }
    }
  6. 在PicGo主窗口中,点击图床设置,选择FTP上传,网站标识填写配置文件中自定义的标识,如images,配置文件填写/Users/你的计算机的用户名/Documents/picgo/config.json,点击确定,并点击设为默认图床
  7. 在主窗口上传区,选择自己想要生成的链接格式,或者选择Custom并在PigGo设置的自定义链接地址中设置,然后实际操作时,可以在截屏后(许多截图工具截图后会拷贝到剪贴板中),按下自定义的上传快捷键,然后图片链接就在剪贴板中了,粘贴到Markdown中,当文档发送给别人,或者发布到网上时,就可以正常展示了。

结束语

本教程到此为止,如果有遇到什么问题,可以私信或者在评论区告诉我。另外打个广告,想学习编程的同学朋友,可以考虑来马士兵教育与我一起学习,快来私信我吧!


http://www.ppmy.cn/news/275729.html

相关文章

家中闲置旧电脑改装家用NAS(入门教程)

家中闲置旧电脑改装家用NAS(纯小白入门教程) 什么是NAS?NAS的基本知识在国内的常用品牌 NAS品牌的配置问题作者的硬件配置 装机正文准备工作旧电脑的准备工作(已经完成或无这方面问题的可跳过)引导盘的制作旧电脑的设置…

废旧笔记本改造安装黑群晖打造私人NAS超级详细图文教程

事情是这样的 在我们楼下居住了10年的租客搬走了,我感到十分的悲伤!怀着沉重的心情到楼下去收拾空荡荡的房子。 然后…在一个不起眼的柜子里发现了一台被丢弃的废旧联想笔记本!作为一个合格的垃圾佬,怎么可能放过如此良机呢&…

写对二分查找不是套模板并往里面填空,需要仔细分析题意

视频讲解:《算法不好玩》二分查找专题 (已经录制的部分,能够帮助大家完全搞懂二分查找算法,非常适合初学的朋友们)。 2022 年 12 月 27 日补充:有时间的话请大家先看上面的视频,2 倍速看完就好…

Spark 优化

1.RDD分区数 Task是作用在每个分区上的,每个分区至少需要一个Task去处理 改变分区数可间接改变任务的并行度,类似手动指定Reduce数量 第一个RDD的分区数由切片的数量决定 默认情况下子RDD的分区数等于父RDD的分区数 Shuflle类算子可手动指定RDD分区数 设…

git回退到某一提交commit

主要命令 git log 查看commit记录 git reset HEAD 回退到当前版本,最近一次的commit(取消暂存区的内容) git reset --hard HEAD^ 回退到上个版本commit git reset --hard HEAD^^ 回退到上上个版本commit git reset --hard id(com…

青空格斗SolanoBattle源代码分享(我的2020大一游戏作)

//《青空格斗》扇奈赛高~(^_^)by:青空恋_Solaai(也就是现在的夏风,子怡我) //Take risks. If you win, you will be happy; if you lose, you will be wise. //如果爱情有颜色,一定是樱色吧~就这样绽放&…

HTML+JavaScript为网页添一点小功能【尼尔机械纪元】

功能一:添加了图片转换功能 let myImage document.querySelector(img); myImage.onclick function() {//将函数和事件绑定let mySrc myImage.getAttribute(src);//将图片的路径赋值给变量名mySrcif(mySrc images/[Thumb]640797182467-d3e67264-b3d8-48bb-afb4-…

creative thoughts开源软件

转载: https://zhuanlan.zhihu.com/p/609516460 1。 IT公司研发系统系列工具打造 https://github.com/hokhyk/actionview.git 需求管理、项目管理、验收资料生成(政府、国企与互联网公司验收资料要求不同) 开源的网址导航网站项目WebStack-Laravel GitH…