banner
0xjokereven

0xjokereven

All is for consistent
twitter
github
pixiv
jike
medium

安装与使用 Fluence CLI

Fluence CLI 是您创建、部署、支付、运行、监控和移除 Fluence Cloudless 资源的一站式命令行接口。

INFO
Fluence CLI 支持 Linux 和 macOS,目前对 Windows 提供实验性支持。了解更多信息请点击这里。

安装 Fluence CLI
在安装 Fluence CLI 之前,您需要先安装 Node.js。最快速的方法是使用安装脚本。将以下命令复制粘贴到命令行中并回车:

sh
复制代码
curl -qsL https://raw.githubusercontent.com/fluencelabs/cli/main/install.sh | bash
这个过程可能需要一些时间,并且根据您的设置,可能会提示您使用 sudo 创建符号链接。安装完成后,请确保使用 fluence update stable 更新到最新版本,然后检查版本号,应类似于以下输出:

sh
复制代码
$ fluence --version
@fluencelabs/cli/0.15.10 darwin-arm64 node-v18.19.1
您也可以将 CLI 更新到特定网络版本,例如 dar 或 kras,分别使用 fluence update dar 或 fluence update kras。通常情况下,更新到 stable 是首选且相对安全的选择。有关更多文档,请参阅 Fluence CLI 仓库。

依赖项
安装脚本会处理安装过程,包括安装 Node.js 和 npm。此外,CLI 会在必要时延迟安装一组 Fluence 库和 SDK 以及 Rust。

您可以使用 Fluence CLI 列出和管理依赖项。让我们看看已安装的内容:

sh
复制代码
$ fluence dep v
如果这是您第一次使用 Fluence CLI,输出可能有所不同:

sh
复制代码
Fluence CLI version: 0.15.5
nox version: fluencelabs/nox:0.20.1
rust toolchain: nightly-2023-08-27-x86_64
aqua dependencies that you can install or update using 'fluence dep i @':
"@fluencelabs/aqua-lib": 0.9.1
"@fluencelabs/spell": 0.6.9
marine and mrepl dependencies that can be overridden in fluence.yaml using marineVersion and mreplVersion properties:
marine: 0.19.2
mrepl: 0.26.2
internal dependencies:
"@fluencelabs/air-beautify-wasm": 0.3.6
"@fluencelabs/aqua-api": 0.14.2
"@fluencelabs/aqua-to-js": 0.3.5
"@fluencelabs/deal-ts-clients": 0.6.1
"@fluencelabs/fluence-network-environment": 1.1.2
"@fluencelabs/js-client": 0.8.3
"@fluencelabs/npm-aqua-compiler": 0.0.3
internal aqua dependencies:
"@fluencelabs/installation-spell": 0.6.9
js-client dependencies:
"@fluencelabs/avm": 0.59.0
"@fluencelabs/marine-worker": 0.5.1
"@fluencelabs/threads": ^2.0.0
"@fluencelabs/interfaces": 0.11.0
"@fluencelabs/js-client-isomorphic": 0.5.0
Fluence CLI 仅安装所需内容,并根据需要延迟添加缺少的依赖项。特别是开发计算函数所需的依赖项,如 Rust 和各种 Marine 依赖项。然而,您可以一次性安装所有依赖项,包括 Rust:

sh
复制代码
$ fluence dep i
此外,您可以使用 fluence dep reset 和 fluence dep uninstall 分别将依赖项重置为 CLI 版本的默认值或卸载某个版本。

::: info 您的 Rust 设置需要 wasm32-wasi 编译目标才能生成 Wasm 模块。您可以使用 rustup target list --installed|grep wasm32 检查系统。如果缺少 wasm32-wasi 目标,请使用 rustup target install wasm32-wasi 安装。 :::

依赖项安装和管理在~/.fluence 目录中。我们来看看:

$ tree -L 3 ~/.fluence
/Users/bebo/.fluence
├── cargo
│ ├── marine
│ │ ├── 0.17.0
│ │ ├── 0.19.0
│ │ └── 0.19.2
│ └── mrepl
│ ├── 0.24.0
│ ├── 0.26.0
│ └── 0.26.2
├── cli
│ ├── LICENSE
│ ├── README.md
│ ├── bin
│ │ ├── dev.js
│ │ ├── fluence
│ │ ├── fluence.cmd
│ │ ├── node
│ │ └── run.js
│ ├── dist
│ │ ├── baseCommand.d.ts
│ │ ├── baseCommand.js
│ │ └── versions.json
│ ├── node_modules
│ │ ├── @achingbrain
│ │ └── zod
│ ├── package.json
│ └── yarn.lock
├── config.yaml
├── npm
│ └── @fluencelabs
│ ├── aqua-lib
│ ├── registry
│ └── spell
├── schemas
│ └── config.json
├── secrets
│ └── auto-generated.txt
└── tmp
├── cargo
└── npm
└── @fluencelabs
615 directories, 25 files
您的输出可能会有所不同,但您应该注意到,特定软件包的不同版本可以全局安装,即在~/.fluence 目录中,并固定到特定 CLI 项目。稍后会详细介绍。

请注意,如果您希望使用 Fluence 本地网络,需要安装 Docker。

目标受众
Fluence CLI 支持开发人员、容量提供商和委托者的需求。一些功能是共享的,其他功能是针对特定目标的,并分别在 fluence provider 和 fluence delegator 主题下。

CLI 快速指南
如前所述,Fluence Cloudless 开发和生产生态系统由不同的网络组成,从生产主网到本地网络。这些网络有时代表不同的分叉,需要不同的依赖版本才能正常工作。Fluence CLI 允许您根据目标选择切换开发环境,并维护适当的依赖项。

CLI 版本管理
要将 CLI 版本更新到正确的环境,请使用 fluence update 命令:

$ fluence update [CHANNEL] [-a] [--force] [-i | -v ]
如果您希望将版本更新到最新的 dar(测试网)版本,请运行:

$ fluence update kras
更多示例请参阅 fluence update --help。

Fluence CLI 模板
CLI 提供了几种模板,使您能够根据需求快速创建项目:

minimal
基本模板,不预先填充计算服务
quickstart
带有已安装计算服务的模板
ts
适用于带有 TypeScript 前端的计算服务的模板
js
适用于带有 JavaScript 前端的计算服务的模板

Fluence CLI 密钥管理
为了使 Fluence CLI 能够安全地与 Fluence 的对等网络中的节点进行交互和通信,需要加密密钥来进行加密和认证。默认情况下,CLI 会为您创建并管理这些密钥,存储在~/.fluence/secrets 目录中,适用于所有项目,除非您创建特定项目的密钥。项目密钥默认存储在项目的 .fluence/secrets 目录中或任何其他指定位置。

$ fluence key new
? Enter secret key name to generate at /keys-demo/.fluence/secrets: my-project-keys
? Do you want to set my-project-keys as default secret key at /keys-demo/fluence.yaml: Yes
Secret key with name my-project-keys successfully generated and saved to /keys-demo/.fluence/secrets
关于密钥的所有相关信息,请参阅 fluence key --help。

INFO
Fluence CLI 创建和管理的密钥用于 Fluence 的链外对等计算网络的节点识别和内容加密。Fluence CLI 不负责管理您的加密货币(钱包)密钥。

创建项目
您可以使用 fluence init 命令创建一个 Fluence 项目,该命令提供了一些选项来命名和配置您的模板:

$ fluence init [PATH] [--no-input] [-t ] [--env ] [--noxes ]
``

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。