标签 GitHub 下的文章 - 🥝 E 家 分 享 🥝
首页
📋 留言板
🔗 友情链接
🛠️ E家百宝箱
❤️ 关于
推荐
🔍 VPS监控
🐉 青龙面板
💽 E家网盘
----------
🔗 CloudFlare
🔗 甲骨文云
🔗 RackNerd
搜 索
1
自动提取 ChromeGo 一键翻墙包内的免费节点
145 阅读
2
【汇总:免费节点 - 每周更新】
114 阅读
3
GigaFile - 日本免费大文件加密分享服务,最长保留文档100天
71 阅读
4
【E家分享月刊系列】2024-12
56 阅读
5
CloudFlare WARP 免费 VPN 搭建教程
55 阅读
精选网站
网站搭建
科学上网搭建
有感而发
软件技巧
Excel技巧
WordPress技巧
登录
搜 索
标签搜索
WordPress
脚本
GitHub
科学上网
哈佛管理导师
E家分享月刊系列
V2ray
Mac软件
AI
Cloudflare
Docker
免费节点
建站在线工具
Excel技巧
Notion
Nginx
ChatGPT
图像编辑
免费图床
网盘资源
E家之长
累计撰写
195
篇文章
累计收到
245
条评论
首页
栏目
精选网站
网站搭建
科学上网搭建
有感而发
软件技巧
Excel技巧
WordPress技巧
页面
📋 留言板
🔗 友情链接
🛠️ E家百宝箱
❤️ 关于
推荐
🔍 VPS监控
🐉 青龙面板
💽 E家网盘
----------
🔗 CloudFlare
🔗 甲骨文云
🔗 RackNerd
用户登录
登录
找到
15
篇与
GitHub
相关的结果
2024-06-10
【E家原创】免费图床解决方案
前言自从建站以来,最开始文章的附图都是以附件形式上传到博客文件夹下,好处是方便备份和迁移。后来发现这样每次加载都会增加服务器的负荷,影响页面的打开速度。因此希望图文分离,图床的需求由此产生。图床的基础要求就两点:速度+稳定,本着白嫖的想法,开始尝试过网上一些免费图床,但是体验不是很好,不是隔三岔五打不开了,就是有各种限制。所以最后尽量选择一些大厂提供的免费空间作为图床。接下来我为大家分享我使用的几种免费图床解决方案:Github + CDNBackblaze + CloudflareCloudflare R2Github + CDNGithub 的图床稳定性是不容置疑的,所以图床一旦出问题,就快速切换到这个方案应急。需要注意的是 Github 图片仓库如果过大的时候,记得换仓库,否则有封号的风险。配置方案网上有很多教程,这里我想分享一直使用的方案:通过 PicX 压缩成 webp 格式并上传至 Github 上,同时复制 Markdown 格式的带 CDN 的图片链接,添加博客文章中。图片制作见另外一个帖子:fabritor:快速构建属于自己的图片设计编辑器PicX 是一款安全且免费的图床工具,提供图片上传托管、生成图片链接和图片工具箱服务。PicX 建议使用自定义的仓库和分支,即 PicX v2.0:https://v2.picx.xpoet.cn/这样你可以自由的选择上传的文件夹。使用手册见:https://picx-docs.xpoet.cn/usage-guide/get-start.html在我的设置 -> 图片链接规则配置,选择适合的 CDN,从而实现 CDN 加速。推荐使用 jsDelivr,相对稳定。类型图片链接规则GitHub Pageshttps://}.github.io/}/}GitHubhttps://github.com/}/}/raw/}/}jsDelivrhttps://cdn.jsdelivr.net/gh/}/}@}/}Staticallyhttps://cdn.statically.io/gh/}/}@}/}ChinaJsDelivrhttps://jsd.cdn.zzko.cn/gh/}/}@}/}上传时建议勾选压缩图片和转换 Markdown,这样上传后直接就得到压缩后的 Markdown 图片地址,复制到博客文章中即可。压缩图片格式推荐是 webp 格式。Backblaze + CloudflareBackblaze 的优势是每月前 10G 流量免费,用于做图床是非常够用的。同时使用 Cloudflare 自定义域名做 CDN 加速。准备条件:Backblaze 免费账户,申请地址:https://www.backblaze.com/sign-up/cloud-storage?referrer=getstartedCloudflare 免费账户,这个基本上大家都知道怎么注册了。创建存储桶登录后,点击左侧的 “桶”,点击“创作一个桶”桶独特名字:Bucket 名称必须是全局唯一的,并且必须至少有6个字符。一旦创建,后期无法修改。桶里面的档案是:设置为“公众”。桶创建后,点击“桶设定”,在“桶信息”中添加 来配置桶的缓存时间。这样可以适当的控制下流量。接下来就可以点击“上载/下载”按钮进行图片上传了。图片链接地址格式如下:https://f004.backblazeb2.com/file/自定义桶名称/图片.webp在 CloudFlare 中配置域名如上面提到的图片链接格式,链接很长又不友好。如果想替代成自定义域名的方式,就需要在 CloudFlare 中进行设置了。在 CloudFlare 域名 DNS 里面创建一条 CNAME 记录,并把上面图片链接地址中域名部分填到目标里面,并且启用 CloudFlare 的代理,这样我们才能享受到带宽联盟的优惠。注意:这里只能是二级域名,如 img.5iehome.cc,而不能是多级的 blog.img.5iehome.cc,否则 CloudFlare 会无法申请证书,也就无法正常启用 HTTPS。这时候我们就可以用 https://img.5iehome.cc/file/自定义桶名称/图片.webp 访问这个图片了。但是我们仍然想只看到 https://img.5iehome.cc/图片.webp 形式,那么还需要进行进一步的配置。为请求配置 CloudFlare 规则前往 CloudFlare 的“规则页面”,选择“转换规则”,然后在“重写 URL”这个 tab 中新增一个规则。规则名称:随意填写选择“自定义筛选表达式”:依次设置“主机名",“等于”,“img.5iehome.cc”点击“And”按钮,增加一条规则,依次设置“URL 路径”,“开头不是”,“/file/wp-img”或者直接“编辑表达式”,输入:(http.host eq "img.5iehome.cc" and not starts_with(http.request.uri.path, "/file/wp-img"))接下来设置重写参数,选择“重写到...”,表达式类型选择“Dynamic”,表达式填写:concat("/file/wp-img", http.request.uri.path)这样 CloudFlare 就会自动补全完整的路径,即可以通过 https://img.5iehome.cc/图片.webp 形式来访问图片了。对象存储管理使用 Blackblaze 自己的网页形式进行图片的上传和下载固然可以,但是操作起来感觉还是不算友好。这里推荐使用对象存储形式来管理图片。可参考 Alist 官方文档对象存储部分:https://alist.nn.ci/zh/guide/drivers/s3.html按照下图的步骤进行配置,即可在电脑端或网页端进行快速的管理,要比 Blackblaze 官方自己的管理方式要友好方便的多。Cloudflare R2CloudFlare R2 可以提供免费 CDN,绑定域名不需要备案,每月有免费 10GB 流量额度,足矣支撑个人博客使用,即使超出之后,费用也是相当便宜。详细定价: https://developers.cloudflare.com/r2/pricing/准备条件:Cloudflare 免费账户,域名已经托管到 Cloudflare 上,最好是直接在 Cloudflare 上购买的域名。在 Cloudflare 上已经绑定银行卡,不会产生扣费。创建 R2 存储桶点击页面左侧的 "R2",选择“将 R2 订阅添加到我的帐户”。接下来选择“创建存储桶”。存储桶名称:任意。位置:如果是面向大陆用户,建议指定“亚太地区(APAC)”。接下来就可以通过拖放或从计算机中选择,添加文件到 R2 存储桶中了。注意:超过 300 MB 的文件只能使用 S3 兼容性 API 或 Workers 上载。给 R2 存储桶绑定域名选择“设置”页面,在“自定义域”选择“连接域”。接下来添加自定义域名,这里就体现出直接在 Cloudflare 上购买和托管域名的好处了,直接输入想要的二级域名,点击“继续”。这样 Cloudflare 会自动为你添加二级域名了。点击“连接域”,稍等几分钟,域名就连接好了。设置允许公开访问这一步很重要,如果不设置,上传图片后,是不能直接在公网访问的。在“R2.dev 子域”中,选择“允许访问”。键入“allow”并确认,允许公开访问。设置之后可以看到,已经允许公共访问,到这一步,桶的配置已经完成。对象存储管理同样使用 Cloudflare 自己的网页形式进行图片的上传和下载操作起来感觉还是不算友好。这里推荐使用对象存储形式来管理图片。可参考 Alist 官方文档对象存储部分:https://alist.nn.ci/zh/guide/drivers/s3.html按照下图的步骤进行配置,即可在电脑端或网页端进行快速的管理。参考资料:https://www.howie6879.com/post/2022/05_pic-url-solution/#-github--jsdelivrhttps://www.boris1993.com/migrating-blog-images-to-backblaze.htmlhttps://testerhome.com/topics/36077https://alist.nn.ci/zh/guide/drivers/s3.html#list-object-version【END】
2024年06月10日
42 阅读
0 评论
0 点赞
2024-03-16
MeTube:一款 YouTube 下载器
软件介绍今天跟大家分享一款 YouTube 下载器:MeTube。MeTube 是一个基于 youtube-dl 的 GUI web 系统,它能够从 YouTube 和其他许多视频和音乐站点比如B站,下载流媒体内容。MeTube 提供了一个界面友好的网页版界面,让用户可以轻松地搜索、下载和管理视频和音乐内容。项目地址GitHub 地址:https://github.com/alexta69/metube支持视频下载的网站:https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md安装方法官网推荐 Docker 或 Docker-Compose 部署。Docker 方式docker run -d -p 8081:8081 -v /path/to/downloads:/downloads ghcr.io/alexta69/metubeDocker-Compose 方式version: "3" services: metube: image: ghcr.io/alexta69/metube container_name: metube restart: unless-stopped ports: - "8081:8081" volumes: - /path/to/downloads:/downloads本文将介绍使用 1Panel 以 Docker-Compose 的方式来安装 MeTube。1Panel 安装 MeTube登录 1Panel, 依次点击 容器 -> 编排 -> 创建编排。 选择编辑,为项目创建名为 metube 的文件夹,复制上面的 Docker-Compose 代码,粘贴到编辑对话框内,点击确定。 系统会自动拉取镜像。点击返回。编排列表中就会出现 metube 的容器。 点击容器页面,就可以通过端口链接访问 Metube 项目主页,默认端口号为 8081 使用 MeTube使用非常简单,只需要在视频或音乐网站上复制网址链接,粘贴在输入框中,点击 Add 按钮,自定义视频质量、格式等设置后,剩下的交给 MeTube 慢慢下载即可。后记MeTube 还支持浏览器插件和苹果手机快捷指令,请参考项目介绍,这里就不赘述。总之,MeTube 是一个不错的 YouTube 或其他视频网站的下载利器。【END】
2024年03月16日
28 阅读
0 评论
0 点赞
2024-02-15
最适合写小说的工具:novelWriter
本文作者:Morick莫里克 转载地址:https://sspai.com/post/86447前言我喜欢写小说,偶尔脑子里蹦出来那么一个灵感,在脑子里就把他构思了个七七八八。于是就想着,要不?写下来吧。于是,便开始选择称手的兵器。写小说这件事,应该需要一件称手的兵器。相对于笔记软件的百家争鸣,写作软件相对来说就比较稀缺。尝试了网上推荐较多的Scrivener、Effie,以及相对用户较少的Writeathon。用起来最舒服的就是Scrivener,但在win平台上的中文体验真的很差,并且对于非作家的我,写小说只是自己的爱好,目前为止,并无收入,所以在选择软件的时候尽可能的选择免费的软件。经过了各种寻找,发现了novelWriter。novelWriter介绍novelWriter是一个开源软件,Github上1.6k Star。使用Python的PyQt5构建,可用于Windows、Mac、Linux系统。在GitHub上的介绍是这样的。novelWriter is an open source plain text editor designed for writing novels. It supports a minimal markdown-like syntax for formatting text. It is written with Python 3 (3.8+) and Qt 5 (5.10+) for cross-platform support.novelWriter是一个纯文本编辑器,并没有思维导图,卡片视图,也无法插入图片,但对于写故事,他是足够的。正如novelWriter的名字,它更适合写故事,或者说,它只适合写故事(小说和非虚构的故事)。文档结构novelWriter的根目录下可以创建小说、归档、情节、角色、位置、时间线、物品、条目和自定义9种类型。其中小说目录可创建多个。文档类型可以分为两类,小说文档和笔记文档,小说文档写小说主体,笔记文档用于构建设定。小说文档只可以创建在小说目录下,笔记文档可以创建在包括小说文档的所有目录下。每个根目录下也可以创建文件夹进行组织和管理。且两种文档类型可以相互转换。小说文档novelWriter采用最基本的markdown语法。每一个小说文档都基于标题进行构建:一级标题用于小说标题页或者中间章;二级标题构建小说章节;三级标题构建场景;四级标题构建场景中的不同部分。小说编辑过程中可以每部分都新建一个文档,也可以整本小说都写在一个文档中,写完再根据标题进行拆分。笔记文档笔记文档可以创建在任何类型的目录下,进行小说的设定,备忘,大纲的撰写。编辑器文本格式novelWriter使用简单的Markdown语法及简单的Shortcode语法:标题一级标题# 二级标题##三级标题###四级标题#### 加粗**加粗文本**[b]加粗文本[/b]斜体_斜体文本_[i]斜体文本[/i]删除线~~删除~~[s]删除[/s]下划线[u]下划线[/u]上标内容[sup]上标[/sup]下标内容[sub]下标[/sub]对齐和缩进在文档文件中,默认文本将采用左对齐或两端对齐。可以通过使用一组‘>>’或‘<<’符号,来指定特定段落的对齐方式,使用‘>’和‘<’符号,使段落从左右两边进行缩进。这段文本是左对齐的。<< >> 这段文本是右对齐的。 >> 这段文本是居中的。<< > 这段段落从左边距和右边距都进行了缩进。这在您想要引用一大段文本时非常有用。<评论与注释概要评论可在表格试图中显示。概要评论:%Synopsis: 短评论:%Short: 文本替换在小说编辑过程中使用<文本>进行占位,在转换到阅读视图以及导出和预览时可以根据项目设置中的替换规则进行替换。小说组织视图项目视图为小说所有笔记与小说文档进行构建的视图。大纲视图在侧边栏显示小说的大纲,只包含小说文档。根据标题级别进行识别,一个文档多个文档都可识别。在项目视图和大纲视图中,选中文档在文档树底部的信息栏可以显示该文档的属性信息。表格视图将小说大纲以及其标签属性通过表格的形式展现。显示的属性可以自定义。选中文档可在底部显示该文档的具体属性。标签和参考每篇文档都可以使用@tag:标签给文档添加标签。也可以使用特定语法为文档添加参考属性:情节:@plot:角色:视角角色:@pov:焦点角色:@focus:次要角色:@char:位置:@location:时间线:@time:物品:@object:条目:@entity:自定义:@custom:在所有页面(小说文档中,每个标题都可以理解为一个文档)中都可以使用该种语法添加属性,且会针对属性类型进行建议。注意,被关联的文档需要使用@tag:标签内容进行标签定义。在小说编辑过程中,鼠标放在属性链接上,点击跟随标签,可在侧边栏打开这篇文档,进行参考。状态、活动状态、重要性文档树中每一级名称后分别为字数、活动状态、状态\重要性。活动状态有两种,活动与非活动。分别以方框内的✔和❌显示:小说文档可以设置状态,可在文档树内切换和自定义,也可在项目设置中自定义。笔记文档可以设置重要性,类似于小说文档的状态设置。其他导出在一本小说写完可以进行构建导出,可自定义进行文档过滤,进行预览,并导出多种格式。写作统计现存问题由于汉字等CJK语言文字的特性,字数统计规则与英文等字母文字不同,汉字的字数统计并不是根据空格进行分割,所以在字数统计中,“字数”是汉字的字符数,“单词”对于汉字的统计并无意义,可以忽略,针对这个问题,我在GitHub上也已经与开发者进行了探讨,对于CJK文字的改进也纳入规划。总结写小说的重点永远在写,工具只是工具,本文章只是对于novelWriter的一个简单的推荐和上手介绍,或许介绍的并不全面。是否选择它,还需要看自己用着是否舒服,别被工具绑架,专心去创造故事。【END】
2024年02月15日
9 阅读
0 评论
0 点赞
2024-01-06
自动提取 ChromeGo 一键翻墙包内的免费节点
ChromeGo:Chrome一键翻墙包介绍ChromeGo一个集成 Goflyway、v2ray、Daze、SSR、Brook、Lightsocks、trojan、蓝灯、psiphon 等N多翻墙工具的电脑翻墙包(推荐按前面所列顺序依次尝试),所有工具全部内置免费服务器,长期更新。Github 项目地址:https://github.com/bannedbook/fanqiang由于集成的工具过多,各个节点过于分散,没有做到一个很好的聚合,于是就有了下面介绍的几种提取免费节点的聚会脚本。利用 Python 脚本提取绵羊的金属精炼器参考文档:https://blog.mareep.net/posts/38493/ChromeGo 里面用到的节点池:https://github.com/Alvin9999/pac2/tree/master聚合过程就是提取他各个客户端里面的节点,用了 Python 进行了简单的处理转换,然后放 action 里面每天跑两次。具体操作见 Github 项目地址:https://github.com/vveg26/chromego\_merge演示视频:chromegopacsGithub 项目地址:https://github.com/vveg26/chromego\_merge项目介绍:提取 ChromeGo 经常更新维护的部分节点,显示节点地理位置,6小时运行一次 action 资源。订阅链接:https://raw.githubusercontent.com/markbang/chromegopacs/main/hy2pac.txt利用 Cloudflare Wokers 自动提取Github 项目地址:https://github.com/shiteThings/extractNodesCloudflare 创建 Workers登录 Cloudflare,点击左侧 Workers 和 Pages,点击右侧的 创建应用程序 按钮。点击 创建 Worker 按钮。 命名新的脚本名称,点击 部署 按钮。提示创建成功,点击 编辑代码。删除系统默认代码,复制粘贴下面代码。最后点击 保存与部署。addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)); }); async function handleRequest(request) { // 定义要发送请求的地址数组,每个元素包含一个 url 和一个处理函数 const sites = [ , , , , , , , , //hy2 , , , , , , , , //xray , , , , , , , //singbox , , , // 添加更多的网站地址和类型... ]; // 存储拼接后的字符串,用于去重 const uniqueStrings = new Set(); // 发送请求并处理响应 async function fetchData(site) { try { const response = await fetch(site.url); const data = await response.json(); // 根据网站类型选择对应的处理函数 let formattedString ; if(site.type === "hysteria") { formattedString = processHysteri(data) } else if(site.type === "hysteria2") { formattedString = processHysteria2(data) } else if(site.type === "xray"){ formattedString = processXray(data) } else { formattedString = processSingbox(data) } // 将拼接的字符串添加到集合中 uniqueStrings.add(formattedString); } catch (error) { console.error(`Error fetching data from $: $`); } } // 处理类型1的数据 function processHysteri(data) { // 从 JSON 数据中提取字段,并按指定格式拼接字符串 const up_mps = data.up_mbps; const down_mps = data.down_mbps; const auth_Str = data.auth_str; const server_name = data.server_name; const alpn = data.alpn; const server = data.server; return `hysteria://$?upmbps=$&downmbps=$&auth=$&insecure=1&peer=$&alpn=$`; } // 处理类型2的数据 function processHysteria2(data) { // 根据类型2的数据提取字段,并按指定格式拼接字符串 // 这里提供一个示例,实际情况需要根据实际数据结构调整 // 从 JSON 数据中提取所需字段 const auth = data.auth || ''; const server = data.server || ''; // 根据 data.insecure 的值设置 insecure const insecure = data.tls.insecure ? 1 : 0; const sni = data.tls.sni || ''; return `hy2://$@$?insecure=$&sni=$`; } // 处理xray的数据 function processXray(data) { let protocol, address, port, id, encryption, type, security, sni, fp, path, host; let outboundConfig = data.outbounds[0]; protocol = outboundConfig.protocol; id = outboundConfig.settings?.vnext?.[0]?.users?.[0]?.id; address = outboundConfig.settings?.vnext?.[0]?.address; port = outboundConfig.settings?.vnext?.[0]?.port; encryption = outboundConfig.settings?.vnext?.[0]?.users?.[0]?.encryption; type = outboundConfig?.streamSettings?.network; security = outboundConfig?.streamSettings?.security; sni = outboundConfig?.streamSettings?.tlsSettings?.serverName; fp = outboundConfig?.streamSettings?.tlsSettings?.fingerprint; path = outboundConfig?.streamSettings?.wsSettings?.path; host = outboundConfig?.streamSettings?.wsSettings?.headers?.Host; return `$://$@$:$?security=$&sni=$&fp=$&type=$&path=$&host=$`; } // 处理singbox的数据 function processSingbox(data) { const outbounds = data.outbounds[0]; const up_mps = outbounds.up_mbps; const down_mps = outbounds.down_mbps; const auth_Str = outbounds.auth_str; const server_name = outbounds.tls.server_name; const alpn = outbounds.tls.alpn[0]; const server = outbounds.server; const port = outbounds.server_port; return `hysteria://$:$?upmbps=$&downmbps=$&auth=$&insecure=1&peer=$&alpn=$`; } // 遍历所有地址并发送请求 const promises = sites.map(site => fetchData(site)); await Promise.all(promises); // 构建最终字符串 const finalStrings = [...uniqueStrings]; // 生成 HTML 页面内容 const htmlContent = finalStrings.map(str => `<p>$</p>`).join('\n'); return new Response(htmlContent, { headers: , }); }查看提取的免费节点接下来就可以通过访问 https://chromego.xxxx.workers.dev/ 的形式,查看自动提取出的免费节点。注意:由于 Cloudflare Workers 被滥用,打开上述链接,有可能需要通过代理(2024-01-10更新)该脚本作者提供了自己维护的提取地址(要开代理才能访问):worker 订阅链接:https://chromegolatest.amazinglinyy.workers.dev/自定义域订阅链接:https://chromenodes.marcol.top/NekoRay - 运行 Hysteria 代理核心参考文档:https://blog.echosec.top/p/nekoray-hysteria/上面提取的节点都是以链接形式呈现的,尤其是 Hysteria 节点,俗称歇斯底里,无法直接复制粘贴到 V2ray 中使用。这里推荐使用 NekoRay 客户端可直接复制粘贴使用提取的免费节点。介绍NekoRay 基于 Qt 的跨平台代理配置管理器 (后端 v2ray / sing-box),目前支持 Windows / Linux 开箱即用。GitHub 项目地址:https://github.com/MatsuriDayo/nekoray项目网址:https://matsuridayo.github.io/项目帮助文档:https://matsuridayo.github.io/index\_docs/使用方法跟 V2ray 类似,支持订阅更新,节点导入支持手动和剪贴板。这里重点介绍一下如何配置使用 Hysteria 协议。下载 Hysteria进入 Hysteria 项目最新下载页面:https://github.com/apernet/hysteria/releases ,下载最新版的 hysteria-windows-amd64.exe,将其放置在 NekoRay 配置目录下,例如:\nekoray\\config\\hysteria-windows-amd64.exe。配置 NekoRay 代理核心这里以最新版 3.26 版本为例:打开 NekoRay,进入「首选项」->「基本设置」->「其他核心」界面,选择 hysteria 的绝对路径,即刚下载的 hysteria-windows-amd64.exe 文件绝对路径。导入启动节点接下来从剪贴板导入节点,测试没问题后,启动节点,即可使用提取的免费节点进行科学上网了。设置绕过局域网和大陆的路由规则依次点击“首选项”→“路由设置”,转到“简易路由”页,点击“预设”里的“绕过局域网和大陆”,然后点击“确定”即可。【END】
2024年01月06日
145 阅读
0 评论
0 点赞
2023-12-25
自己部署谷歌 Gemini Pro Chat
前言最近谷歌的 Gemini Pro Chat 比较火,大有超过其他各大 GPT 的趋势。网上找到有人基于现有的 GPT 开源套壳修改而成的项目,为 Gemini Pro 聊天模型提供了一个直观、易用的用户界面。并且完全开源,支持自己以各种方式搭建。项目信息Github 项目地址:https://github.com/babaohuang/GeminiProChat体验网址:https://geminiprochat.com/项目介绍:与 Gemini Pro 聊天的最简 WebUI。部署API key 获取Google AI Studio 会为每个新的 API 密钥创建一个新的 Google Cloud 项目。您还可以在现有 Google Cloud 项目中创建 API 密钥。 注意:Gemini API 目前为公共预览版。尚不支持生产应用程序。 获取地址:https://makersuite.google.com/app/apikey点击“Create API key in new project"按钮。 复制生成的 API key。 使用 Vercel 部署(推荐)只需点击上面的按钮,并按照说明操作,即可部署自己的副本。[!NOTE]关于 API 使用过程中 “User location is not supported for the API use” 的解决方案如果你遇到了 “User location is not supported for the API use” 的问题,请按照以下步骤进行解决:前往 palm-proxy 仓库并点击其中的 “Deploy With Vercel”。部署完成后,你将收到 Vercel 分配的域名 (例如 https://xxx.vercel.app)。在你的 Gemini Pro Chat 项目中,设置名为 API_BASE_URL 的环境变量,其值为部署 palm-proxy 时获得的域名 (https://xxx.vercel.app)。重新部署你的 Gemini Pro Chat 项目来完成配置。这应该可以解决问题。感谢 antergone 提供解决方案。使用 Railway 部署只需点击上面的按钮,然后按照说明在 Railway 上进行部署。使用 Zeabur 部署只需点击上面的按钮,然后按照说明在 Zeabur 上进行部署。使用 Docker 部署要使用 Docker 进行部署,可以使用以下命令:docker run --name geminiprochat \ --restart always \ -p 3000:3000 \ -itd \ -e GEMINI_API_KEY=your_api_key_here \ babaohuang/geminiprochat:latest请确保将 your_api_key_here 替换为你自己的 Gemini API 密钥。这将启动 geminiprochat 服务,访问地址为 “http://localhost:3000”。环境变量你可以通过环境变量来控制网站。名称说明必填GEMINI_API_KEY你的 Gemini API 密钥。可以从此处 获取。✔API_BASE_URLGemini API 的自定义基本 URL。点击此处查看何时使用这个。❌HEAD_SCRIPTS在页面的“”之前注入分析或其他脚本❌PUBLIC_SECRET_KEY项目的密文字符串。用于为 API 调用生成签名❌SITE_PASSWORD为网站设置密码,支持用逗号分隔的多个密码。如果不设置,网站将允许公开访问❌本地运行前期环境Node: 检查你的开发环境和部署环境是否都在使用 Node v18 或更高版本。你可以使用 nvm 在本地管理多个 node 版本。node -vPNPM: 我们建议使用 pnpm 来管理依赖关系。如果从未安装过 pnpm,可以使用以下命令进行安装:npm i -g pnpmGEMINI\_API\_KEY: 在运行此应用程序之前,你需要从 Google 获取 API 密钥。你可以前往 https://makersuite.google.com/app/apikey,申请 API 密钥。部署安装依赖pnpm install复制 .env.example 文件并重命名为 .env,并在 .env 文件中添加 GEMINI_API_KEY。GEMINI_API_KEY=AIzaSy...运行应用程序,项目会在 http://localhost:3000/ 上运行。pnpm run dev其他类似项目基于 Gemini Pro API 搭建的网站,无需注册登录,可供国内免费使用。https://www.chatgemini.nethttps://gemini.ai4you.tophttps://googlegemini.co/try-google-gemini-for-free参考网站https://github.com/babaohuang/GeminiProChat/blob/main/README\_cn.mdhttps://andytreasurebox.blogspot.com/2023/12/gemini-api-key.html【END】
2023年12月25日
9 阅读
0 评论
0 点赞
1
2
3