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 ]
``

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