利用GitHub+repo-sync+jsDelivr+uPic搭建的免费图床
鉴于PicGo在我设备上一直出现”上传失败’’的情况,所以我将其换成了uPic,借此写下这篇随记
GitHub
首先创建一个公开项目,可以取任何名称
这是我的项目,欢迎参考
Git Sync
使用该功能是为了让github项目自动同步到coding或gitee,虽说现在有免费的jsDelivr起到cdn加速作用,但谁能保证这玩意不会哪天突然挂了:|
咱本着懒癌精神,打算用最自动化的方式来实现,于是咱摸索出偶然间发现了别人项目中的这一十分强大的功能–Action,具体玩法咱就不过多叙述了
此项目得益于github官方提供的Action服务,在Marketplace里可以搜索的到,使用起来也是非常的方便
项目地址: git sync
用法(参考官方wiki):
在本地项目中创建.github/workflows/xxx.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 on: push
jobs:
repo-sync:
runs-on: ubuntu-latest
steps:
- name: repo-sync
uses: wei/git-sync@v1
env:
SOURCE_REPO: "源仓库"
SOURCE_BRANCH: "源分支"
DESTINATION_REPO: "目标仓库"
DESTINATION_BRANCH: "目标分支"
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
with:
args: $SOURCE_REPO $SOURCE_BRANCH $DESTINATION_REPO $DESTINATION_BRANCH
由于项目所有人都能看见,为了确保其安全性,建议使用ssh连接项目,私钥储存在项目名称/settings/Secrets
,公钥在此添加https://github.com/settings/keys
创建密钥对
已经创建了的可以跳过这步
若提示git@github.com: Permission denied (publickey)
可以删除~/.ssh/id_rsa
和~/.ssh/id_rsa.pub
后重新创建
ssh-keygen -t rsa -C "邮箱"
创建密钥对,一路回车即可
ssh-agent bash
ssh-agent -s
ssh-add ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub
将其复制并添加到https://github.com/settings/keys
别忘了gitee或coding也需要部署公钥
ssh -T git@github.com
验证是否生效,若出现Hi,xxx!You've successfully authenticated
即代表成功
cat ~/.ssh/id_rsa
将所有内容全都复制并添加到项目/settings/Secrets
,名称与git sync项目里变量名SSH_PRIVATE_KEY
相同
uPic
upic仅支持MacOS,如果其他平台有这个需求,可以使用PicGo
从github下载GUI客户端https://github.com/gee1k/uPic
在偏好设置里添加github,并修改其相关配置
GitHub配置
用户名: zhboat
仓库名: cdn_pic
Token: github添加token
域名: 可以自定义,如使用cdn加速勾选加速访问即可
保存路径: 默认是upic/文件名.后缀名