用 Huggingface Space 免费搭建 Metatube 后端服务

English

Huggingface 上线了 Space 功能,提供了免费的 2CPU / 16G 内存的运行环境,可以运行Docker。于是我尝试部署了一个Metatube后端服务,很容易就实现了:地址如下,不需要Token,暂时也没被墙 Metatube Server

https://metatube-server.hf.space/

但它有个限制,48小时内没有访问就会关闭服务

If your Space runs on the default hardware, 
it will go to sleep if inactive for more than a set time (currently, 48 hours). 
Anyone visiting your Space will restart it automatically.cpu-basic

所以我把项目设置成了公开,如果服务被关闭了,你可以访问链接唤醒 Huggingface Hub

https://huggingface.co/spaces/metatube/server

如果您只是需要免费后端,后续就不用看了,接下来讲一下怎么通过 Huggingface Space 搭建自己的 Metatube 后端服务

也欢迎大家部署成功后分享地址在评论区,方便大家一起使用


注册账号

首先注册一个Huggingface账号,只需要输入邮箱和密码,然后去邮箱验证,需要代理:Join Huggingface

register

创建Space

注册后点击菜单栏右上角的 Spaces 按钮,点击 New Space,开始创建

输入任意名称,类型选择 Docker Blank ,选择 CPU Basic,选择 Public (Private访问需要密钥),然后点击 Create Space

create space

获取ACCESS TOKEN

点击头像下方的 Acccess Tokens 按钮,点击 +Create new token,选择 write 类型,生成的 token 作为 git 提交的密码

create token

上传代码

创建完 Space 会有一个仓库URL,拉取代码,账号是你的 Huggingface 账号,密码是上面生成的 token

然后拉取我的代码,复制到你的仓库中,提交代码

git clone https://huggingface.co/spaces/metatube/server

测试运行情况

此时你再访问 Space 会发现项目已经在Build了,很快就完成了,输出熟悉的

{"data":{"app":"metatube","version":"v1.3.2-f2bbaee"}}

你可以通过链接访问服务了,用你的账号和项目名称拼接而成的链接

https://{yourid}-{serverid}.hf.space/

比如我的账号是 metatube,项目 id 是 server

https://metatube-server.hf.space/

Space是如何运行的

Space支持三种模式:Gradio、Docker和静态网页,如果是Docker模式,需要配置Dockerfile和README.md

比如这是我构建metatube的Dockerfile,拉取了metatube的镜像,配置端口和数据目录,最后运行metatube

FROM ghcr.io/metatube-community/metatube-server:latest

ENV PORT=8080
EXPOSE 8080

RUN mkdir -p /data && chmod 777 /data

ENV DSN=/data/metatube.db
ENTRYPOINT ["/metatube-server"]

README.md文件内容如下,这里我只配置了标题和端口号,默认端口号是7860

---
title: Metatube-Server
emoji: 🐠
colorFrom: green
colorTo: blue
sdk: docker
pinned: false
app_port: 8080
---

上传代码后,根据Dockerfile进行拉取和构建,注意运行的服务需要绑定0.0.0.0:port,因为会检查服务是否正在运行,运行成功后就可以访问网页或者API请求了。

赞赏支持
加载中...
📊 加载中...
感谢Jimmy | 隐私政策 | 赞赏支持
Liu 的 AI 助手