• 保姆级教程:Linux (Ubuntu) 部署流光卡片开源 API


    流光卡片 API 开源地址 Github:https://github.com/ygh3279799773/streamer-card

    流光卡片 API 开源地址 Gitee:https://gitee.com/y-gh/streamer-card

    流光卡片在线使用地址:https://fireflycard.shushiai.com/

    等等,你说你不知道流光卡片是什么?总之这是一个能将你得文字,或者图片美化成好看的卡片的工具哒~仙子你知道了吧,而且还提供了一个开源 api 可以调用哦
    image-20240709152519725

    image-20240709152051777

    想要使用 api 调用服务,需要有

    想要使用 api 调用服务,需要有一个服务器来时刻监听请求。

    服务器终端界面阅读不方便,因此需要使用宝塔面板进行管理。

    特别提醒:在部署服务器前,现在本地跑通流程是一个好习惯!!!(在开源地址里面也有视频教程)

    一、轻量云服务器(阿里云)

    1.1 服务器类型

    省略购买过程,选最低配最便宜的即可。

    在购买时选择 Ubuntu 镜像,版本随便选一个较新的稳定版即可。

    重点强调,不要选择低版本 Linux,不要选择低版本 Linux,为什么不选择 centos7.9 呢?因为他得Linux 内核版本不支持

    选择自定义密码,并设置密码。

    image-20240709145433993

    每个云服务器都是一个实例。

    image-20240709145733787

    1.2 添加宝塔面板

    打开实例后的界面如下图。

    为了更方便地操作我们的服务器,最好是使用便利工具(宝塔面板)来可视化管理。

    因此在这里点击 远程连接。

    image-20240709145752972

    在上一步打开的界面,输入自己的密码,会进入服务器的终端界面。
    在这里复制一下安装 宝塔界面 的代码:

    wget -O install.sh https://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
    

    链接:https://www.bt.cn/new/download.html

    image-20240709145852135

    备注:在终端界面无法Ctrl + V,需要鼠标右键,然后选择粘贴。

    image-20240709145918577

    无脑输入y 。

    image-20240709145927642

    最终成功。

    注意:

    1.面板地址(后续使用第一个外网面板地址)、账户名、密码很重要,注意保存;

    2.注意使用的端口,需要在服务器里打开。

    image-20240709145952830

    1.3 打开宝塔面板端口

    在实例的安全组,点击安全组ID。

    image-20240709150004669

    点击手动添加。

    image-20240709150012119

    添加上面获得的端口,源选择 “所有IPv4(0.0.0.0/0)”,点击保存。

    image-20240709150018929

    二、操作宝塔面板

    2.1 基础设置

    打开上面的“外网面板地址”,输入用户名及密码。

    image-20240709150127429

    绑定宝塔账号(没有就免费注册一个)。

    image-20240709150139099

    选择套件,第一个就行。

    image-20240709150146367

    安装中……

    image-20240709150153675

    2.2 上传项目文件

    再次强调:需要部署的文件,最好本地先把流程跑通。

    上传项目压缩文件(源文件数量太多,以压缩方式上传)。

    image-20240709150259130

    解压文件。

    image-20240709150305343

    image-20240709150312819

    在项目目录下,点开重点,安装项目所需要的库。

    image-20240709150338879

    2.3 安装 Node.js

    Node.js 是一个 JavaScript 的运行环境。可在客户端、服务器运行,应用非常广泛。

    在宝塔面板找到 Node项目。

    由于是新的面板,需要先安装Node版本管理器。

    image-20240709150359715

    选择合适的源、版本就行安装。

    image-20240709150408106

    2.3.5 设置 Node 路径

    使用管理器安装 Node 后,在宝塔的终端输入 node -v 查看版本号。

    image-20240709150421503

    第一次讯问 AI,决定加一下环境变量。

    image-20240709150430968

    选搜索找到 Node 的安装路径。

    image-20240709150439725

    根据 AI 的提示,一步步完成环境变量的设置。

    image-20240709150448105

    2.4 第一个 Node.js 项目

    在同一个界面,添加项目。

    image-20240709150457929

    点击文件夹图标选择项目路径。

    项目端口填3000,同时勾选“放行端口”。

    image-20240709150506993

    提示名称格式不正确,微调去掉“-”即可。

    image-20240709150516249

    打开设置,可以看到项目的运行情况。

    image-20240709150523304

    2.5 排错与运行

    由于本地使用 python 脚本跑通过流程。

    因此这里把 localhost 换为服务器的公网IP,重新进行请求。

    失败了,在项目的设置里,可以看到项目日志。

    image-20240709150535990

    把报错丢给 AI,得知需要设置环境变量。

    在宝塔面板的终端输入 npx puppeteer browsers install chrome

    发现还没安装 puppeteer。

    在终端输入 y 确认后,顺便自动把对应的 chrome 版本也下载好了。

    image-20240709150549686

    再次运行仍有问题,AI 建议在代码中直接指定chrome路径。

    在 example1.js 的第42行下面插入以下代码:

    executablePath: ‘/root/.cache/puppeteer/chrome/linux-126.0.6478.126/chrome-linux64/chrome’,

    image-20240709150605559

    以上设置后,还是有 puppeteer 无法访问 chrome 的问题。

    经过问题AI,可能是权限问题。需要把这里改为 root。

    image-20240709150741829

    再次运行,发现日志有新的错误,说明chrome 路径设置OK了。

    后面都是缺少库的内容,让 AI “一步步地” 详细解答问题,足够我们完成任务。

    当然也可以把 “三、缺少的库” 中的代码在宝塔终端都安装一次,就可以了。

    image-20240709150754181

    服务器报错后,需要重启。

    image-20240709150804485

    三、缺少的库

    在第二步结束后,还有 7 个库的缺少。

    挨个在宝塔的终端安装即可。

    sudo apt-get update
    sudo apt-get install -y libatk1.0-0
    sudo apt-get install -y libatk-bridge2.0-0
    sudo apt-get install -y libxdamage1
    sudo apt-get install -y libgbm1
    sudo apt-get install -y libxkbcommon0
    sudo apt-get install -y libpango1.0-0
    sudo apt-get install -y libasound2
    
  • 相关阅读:
    go基础语法50问,来看看你的go基础合格了吗?
    【算法与数据结构】235、LeetCode二叉搜索树的最近公共祖先
    pycharm2023 实现鼠标点击某行,调试时代码运行至相应行
    ElementUI自定义主题
    [英雄星球七月集训LeetCode解题日报] 第4日 贪心
    第四章. Pandas进阶—数据移位
    ffmpeg视频处理常用命令
    【Linux】Linux系统编程(入门与系统编程)(三)(深入理解操作系统、进程、环境变量、内存分布)
    JAVA-JDBC 原理及使用
    LightDB中的存储过程(八)—— 包
  • 原文地址:https://blog.csdn.net/weixin_46184095/article/details/140297726