笔记 25 3

    使用Github Action自动生成静态相册

    AI摘要:DeepSeek AI摘要 DeepSeek
    本文介绍了如何使用Github Action自动生成静态相册,以解决CDN流量问题和S3存储成本高的问题。通过上传图片到Github仓库,触发Actions自动生成HTML页面,并压缩缩略图以缓解服务器压力。文章还提供了详细的设置步骤和演示地址,展示了如何利用AI生成代码并部署在Github Pages或Vercel上。

    前言

    使用memos调用的相册虽然方便,但是也有一些痛点无法解决

    1. 在CDN被刷流量之后,我已经几乎关闭所有的国内CDN服务,小水管服务器也无法满足大量图片同时加载,那龟速谁用谁知道.
    2. S3存储太贵,在COS被刷了流量之后(没错,我就是这么倒霉),我决定多地备份,主要上传在github,利用Cloudflare+ vercel+github pages+ 其他SaaS. 这些服务的优点就是免费.
    3. 模板来源于网络

    Deepseek

    主要使用AI来解决主要功能代码,主打一个能用就行.至于有什么bug,一个简单的网页生成 能有什么逆天bug也没关系的....吧
    主要代码是 Python

    功能

    我想要的功能

    1. 上传图片到Github 仓库,触发 Actions 自动生成Html页面
    2. 相册的缩略图需要压缩,点击显示原图,缓解小水管压力(没错,我会定时使用git拉取到国内服务器,主打一个多地都能访问)
    3. 根据图片名称自动生成标题

    演示地址

    https://blog.0tz.top/photos
    部署在Github Pages

    使用

    使用模板

    https://github.com/jkjoy/generate-albums

    设置

    在自己仓库的Settings中找到

    指示

    TOKEN为你的 Github token

    REPO为你想要生成相册的仓库名称 如username/repo

    设置

    上传规则

    相册内容上传到 photos 这个目录下

    photos 根目录下的照片默认标题为分享生活

    新建文件夹, 该文件夹名称为此目录下所有图片的标题

    • 照片同名txt中的文本为描述说明 最高优先级
      1.jpg 1.txt 则使用1.txt中的文本为描述说明
    • 目录下描述.txt为此目录下所有图片的描述说明 第二优先级
    • 如果两者都没有则使用照片文件名为描述说明

    其他部分

    可以根据需求修改 template.html 中的布局和内容

    每次修改仓库会自动触发Action 生成HTML到目标仓库,目标仓库可以使用Github Pages,也可以部署在Vercel,这里就不多做说明

    演示

    https://photos-jkjkjoy.vercel.app/

    总结

    AI真好用!!

    1. 沉沦

      2024-12-29 01:12
      香港 Yau Tsim Mong 旺角

      我们如何做到神同步的,我也是刚弄了个类似相册的东西,不过你这高端啊,我都还没考虑流量的问题😂

    2. ACEVS

      2024-12-28 16:34
      香港 鸡鱼环

      演示的是个美女哈。自拍。

        1. 老孙

          2024-12-28 16:37
          新加坡 淡馬錫
          @ACEVS

          Python 从B站爬下来的,啊哈哈,