For the complete documentation index, see llms.txt. This page is also available as Markdown.

1. Internet Computer IDE 使用流程演示

包括创建项目,部署,交互等操作

1. 新建 Internet Computer 项目

首先进入 ChainIDE 入口页面,点击 Code Smarter。

这里会选择你的登录方式,有 Github 和 Guest 两种。(选择 GIthub 登录才可使用 Sandbox 功能)

点击 New Project 按钮。

出现一个弹窗,切换至 Internet Computer 栏,选择一个模板创建一个工程,此处以模板Random Maze为例。

2. Workspace 概览

进入工程后,展示当前工程的 workspace。整体上 workspace 可分为以下几部分:

  1. 顶部栏,包括 回退至 Dashboard 按钮、工程名称展示及修改、用户信息

  2. 左侧 Panel,包括 explorer(即文件树)、PLUGIN MANAGER(管理插件)、Port Forward(端口转发)

  3. 右侧 Panel,与合约工程部署交互相关的插件在此处

  4. 底部栏,Welcome 及 Logger 的入口

用户可点击底部 Logger 唤起底部 Panel,以此查看 IDE 日志输出、Terminal、进行 port forward 等

3. 部署项目至 IDE 本地节点

首先用户需要在当前 IDE 中启动一个本地节点,IDE 为用户提供了快捷工具可一键启动本地网络,用户也可以手动打开一个 Terminal,通过 Internet Computer SDK 启动节点。

为了启动的节点能在外部访问,需要指定节点起的IP为 0.0.0.0 以及端口,端口需为未被其他服务占用的端口,如下:

启动本地 Internet Computer 节点

本地节点启动后,在底部 Panel 的 Ports 栏将节点的端口进行对外转发,以便外部能够访问。

在部署项目之前,若当前工程带有package.json模块,则需要先开一个 Node 镜像的 Terminal 进行依赖的安装:

点击部署时若尚未安装 package,会在 Output 中进行提醒;

安装package提醒

切到 Deploy Panel,打开 Deploy,在 LocalNet & TestNet 栏将上述转发的地址粘贴至 Network 中,点击Deploy,等待 Terminal 输出部署信息

部署中

部署成功后,IDE 会读取文件列表,从 .dfx 读取当前网络下的 canister_ids.json 文件,生成可交互的canister列表。

如果 Terminal 提示部署成功,Interact 没有生成,请刷新页面,文件同步可能存在延迟。

用户可以通过表单的形式输入参数,点击 Call 来调用已部署的 canister 的方法;也可以点击链接打开canister ui,通过 UI 的形式来访问 canister :

Interact
点击ui链接打开的canister random_maze_assets前端界面

4. 部署至测试节点

IDE 为所有用户提供了一个 ChainIDE-Test Network ,其IP为 http://34.209.219.32:8000

仍以 Random Maze 工程为例,进入工程后切到 Deploy Panel。打开 Deploy,在 LocalNet & TestNet 栏可以看到 Network 输入栏 默认值为测试节点IP,直接点击 Deploy,等待 Terminal 输出部署信息。

部署中

部署成功后,IDE 会读取文件列表,从 .dfx 读取当前网络下的 canister_ids.json 文件,生成可交互的canister 列表。

如果 Terminal 提示部署成功,Interact没有生成,请刷新页面,文件同步可能存在延迟。

用户可以通过表单的形式输入参数,点击 Call 来调用已部署的 canister 的方法;也可以点击链接打开canister ui,通过 UI 的形式来访问 canister :

Interact Panel
调用已部署的canister方法
点击ui链接打开的canister random_maze_assets前端界面

5. 部署至主网IC

部署至主网需要使用 Internet Computer 官方的 NNS(Network Nervous System),并且其账户上需要有足够的ICP。

1. 在nns中创建canister

见官方教程 NNS App quick startDeploy a canister with cycles一栏;

创建一个具有至少 2T cycles的canister 备用,复制生成的canisterId, 如:mhgjp-7yaaa-aaaag-aaadq-cai

NNS Canistes

2. 获取本机的 Principal,将其设置为上述 canister 的 Controller

在 IDE 的 Terminal 中获取当前账户的主体标识 Principal :

用户也可通过 Tools 快捷工具快速获取:

Get Principal

NNS的Canister栏相应的canister中,点击Change Controllers按钮,将Principal添加为上述canisterControllers

添加Controller

3. 应用 canister 部署合约

配置完 controller 之后,还需在当前 Internet Computer 工程中配置 canister_ids.json 文件,设置上述生成的canisterIddfx.json配置的canister的id。IDE为用户提供了快捷配置:

切到 Deploy Panel。打开 Deploy,在 MainNet 栏,点击 Config ,打开弹窗,为 dfx.json 中的 canister挨个配置 canisterId

配置canister_ids.json

canister_ids.json 文件配置成功后在MainNet 栏点击 Deploy 进行部署,等待 Terminal 输出主网部署信息。

在 Internet Computer 的dashboard中搜索部署后的canister mhgjp-7yaaa-aaaag-aaadq-cai ,可以看到合约相关信息,说明合约工程已成功部署至主网:

ic dashboard查看已部署canister信息

如需同时部署多个canister,则需要在NNS中创建对应的canister,并在canister_ids.json中配置

Last updated

Was this helpful?