Skip to content

Commit

Permalink
docs: upgrade getting start doc
Browse files Browse the repository at this point in the history
  • Loading branch information
ta0li committed Nov 25, 2022
1 parent 37d63c9 commit 70e5489
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 51 deletions.
5 changes: 3 additions & 2 deletions docker/script/compose.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,10 @@ fi
echo "Compose Int End!"


/app/venus-market pool-run \
/app/venus-market run \
--node-url=/ip4/127.0.0.1/tcp/3453 \
--auth-url=http://127.0.0.1:8989 \
--gateway-url=/ip4/127.0.0.1/tcp/45132/ \
--messager-url=/ip4/127.0.0.1/tcp/39812/ \
--auth-token=${token}
--cs-token=${token} \
--signer-type="gateway"
115 changes: 66 additions & 49 deletions docs/zh/快速启用.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,12 @@

存储流程:

| 阶段 | 步骤 | 说明 |
| ---- | ---- | ---- |
| 启动 `venus-market``market-client` | 1. 配置和启动[venus-market](#配置启动venus-market) <br> 2. 配置和启动[market-client](#配置启动market-client) | |
| 代理 `miners``libp2p` 监听服务 | 通过 `venus-market` [代理 `miners``libp2p` 监听服务](#venus-market代理libp2p监听) | |
|`miners` 挂单 | 通过 `venus-market` [挂单](#挂单) | |
| 指定 `miner` 发单 | 1. 通过 `market-client` [导入待存储的数据](#导入待存储的数据) <br> 2. 根据需求[选择合适的挂单](#选择挂单) <br> 3. [发起存储订单](#发起存储订单) | 发单之后,需要一定时间执行订单交易流程,订单被确认后,存储提供商对订单中数据进行封装并提交证明,`venus-market` 负责跟踪订单状态。

| 阶段 | 步骤 | 说明 |
|-------------------------------------|----------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------|
| 启动 `venus-market``market-client` | 1. 配置和启动[venus-market](#配置启动venus-market) <br> 2. 配置和启动[market-client](#配置启动market-client) | |
| 代理 `miners``libp2p` 监听服务 | 通过 `venus-market` [代理 `miners``libp2p` 监听服务](#venus-market代理libp2p监听) | |
|`miners` 挂单 | 通过 `venus-market` [挂单](#挂单) | |
| 指定 `miner` 发单 | 1. 通过 `market-client` [导入待存储的数据](#导入待存储的数据) <br> 2. 根据需求[选择合适的挂单](#选择挂单) <br> 3. [发起存储订单](#发起存储订单) | 发单之后,需要一定时间执行订单交易流程,订单被确认后,存储提供商对订单中数据进行封装并提交证明,`venus-market` 负责跟踪订单状态。 |

检索流程:

Expand All @@ -37,36 +36,48 @@

### 初始化

- `pool` 模式
- 链上模式

`pool` 模式作为链服务中的一个组件,配合`venus-auth``venus``venus-messager``venus-gateway`等组件一起为注册到链服务的 `miner` 提供市场服务。**`venus`体系中建议使用此方式部署.**
作为链服务中的一个组件,配合`venus-auth``venus``venus-messager``venus-gateway`等组件一起为注册到链服务的 `miner` 提供市场服务。

```
./venus-market pool-run \
./venus-market run \
--node-url=/ip4/<ip>/tcp/<port> \
--auth-url=http://<ip>:<port> \
--gateway-url=/ip4/<ip>/tcp/<port> \
--messager-url=/ip4/<ip>/tcp/<port> \
--auth-token=<shared-token>
--cs-token=<shared-token> \
--signer-type="gateway"
```

:tipping_hand_woman: **`shared-token` 是用于访问其他链服务组件 `API` 时的权限验证,由 `venus-auth` 管理,需要 `admin` 权限。具体请参考 [venus-auth token](https://github.com/filecoin-project/venus-docs/blob/master/docs/zh/cs/deploy-a-cs.md#user及token生成)**

- `solo` 模式
- 链下模式

`solo` 模式独立于链服务外部署,为一个单独的 `miner` 提供市场服务, 需要连接同步节点(`venus/lotus`)和 签名节点(`venus-wallet/lotus-wallet`)方能正常运行。签名节点也可以是同步节点,如`venus fullnode``lotus fullnode`导入钱包私钥后可以作为签名节点。 这里介绍配合 `venus fullnode` 的启动方式:
配合 `lotus fullnode` 的启动方式:

```
./venus-market solo-run \
./venus-market run \
--node-url=/ip4/<ip>/tcp/<port> \
--node-token=<venus fullnode token> \
--signer-type=wallet \
--messager-url=/ip4/<ip>/tcp/<port> \
--cs-token=<token of lotus> \
--signer-type="lotusnode"
```

使用链服务和 `venus-wallet` 的启动方式:

```
./venus-market run \
--auth-url=http://<ip>:<port> \
--node-url=/ip4/<ip>/tcp/<port> \
--messager-url=/ip4/<ip>/tcp/<port> \
--cs-token=<token of write-authority> \
--signer-url=/ip4/<ip>/tcp/<port> \
--signer-token=<wallet token> \
--miner=<minerID>:<account>
--signer-token=<token of venus-wallet> \
--signer-type="wallet"
```

:tipping_hand_woman: **`venus fullnode`导入钱包私钥时,`signer-url``signer-token` 配置和 `node-url``node-token`一致,如果签名用独立的`venus-wallet`组件,则配置为 `venus-wallet`的监听地址及具有签名权限的 `token`.**
:tipping_hand_woman: **签名用独立的`venus-wallet`组件,则配置为 `venus-wallet`的监听地址及具有签名权限的 `token`.**

`venus-wallet` 生成具有签名权限的 `token`:

Expand All @@ -86,13 +97,13 @@ $ ./venus-wallet auth api-info --perm=sign
*tips:* 修改完配置文件之后需要重启`venus-market`服务:

```bash
$ nohup ./venus-market pool-run > market.log 2>&1 &
$ nohup ./venus-market run > market.log 2>&1 &
```
> 已经生成 `repo` 之后,初始化所需的参数被写入配置文件,故后续启动无需再加。
#### 链服务配置

- `pool` 模式,包括:同步节点,消息节点,签名节点及授权节点。
- 包括:同步节点,消息节点,签名节点及授权节点。

```yuml
[Node]
Expand All @@ -110,27 +121,6 @@ $ nohup ./venus-market pool-run > market.log 2>&1 &
Token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiemwiLCJwZXJtIjoiYWRtaW4iLCJleHQiOiIifQ.3u-PInSUmX-8f6Z971M7JBCHYgFVQrvwUjJfFY03ouQ"
```

- `solo` 模式: 通常用`fullnode` 担任链信息同步及消息推送,故只需配置 `[Node]``[Signer]`

```yuml
[Node]
Url = "/ip4/127.0.0.1/tcp/3453"
Token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiZGVmYXVsdExvY2FsVG9rZW4iLCJwZXJtIjoiYWRtaW4iLCJleHQiOiIifQ.bdnxynriFupkiQ4-6BzRMOsFE08L9zuEZEVB_aaCxLE"
[Messager]
Url = ""
Token = ""
[Signer]
Type = "wallet"
Url = "/ip4/127.0.0.1/tcp/3453/http"
Token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiZGVmYXVsdExvY2FsVG9rZW4iLCJwZXJtIjoiYWRtaW4iLCJleHQiOiIifQ.bdnxynriFupkiQ4-6BzRMOsFE08L9zuEZEVB_aaCxLE"
[AuthNode]
Url = ""
Token = ""
```

#### `API` 监听配置

`venus-market` 默认监听端口为 `127.0.0.1:41235`, 为了支持不同网络的访问请求, 需要修改`API`的监听地址:
Expand Down Expand Up @@ -181,13 +171,40 @@ PublishMsgPeriod = "10s"

#### `StorageMiners` 配置

`pool` 模式不需要配置,由 `venus-auth` 管理,`solo` 模式需要配置,如下所示:

```yuml
[[StorageMiners]]
Addr = "t0128788"
Account = "account"
```
`venus-market` 服务的矿工及每个矿工的参数,配置如下:

```
[[Miners]]
Addr = "f01000"
Account = "testuser01"
ConsiderOnlineStorageDeals = true
ConsiderOfflineStorageDeals = true
ConsiderOnlineRetrievalDeals = true
ConsiderOfflineRetrievalDeals = true
ConsiderVerifiedStorageDeals = true
ConsiderUnverifiedStorageDeals = true
PieceCidBlocklist = []
ExpectedSealDuration = "24h0m0s"
MaxDealStartDelay = "336h0m0s"
PublishMsgPeriod = "1h0m0s"
MaxDealsPerPublishMsg = 8
MaxProviderCollateralMultiplier = 2
Filter = ""
RetrievalFilter = ""
TransferPath = ""
MaxPublishDealsFee = "0 FIL"
MaxMarketBalanceAddFee = "0 FIL"
[CommonProviderConfig.RetrievalPricing]
Strategy = "default"
[CommonProviderConfig.RetrievalPricing.Default]
VerifiedDealsFreeTransfer = true
[CommonProviderConfig.RetrievalPricing.External]
Path = ""
[CommonProviderConfig.AddressConfig]
DisableWorkerFallback = false
```
如果有多个矿工,将上述配置拷贝一份即可。***如果矿工比较多,那配置文件会很长,考虑优化?***

## venus-market代理libp2p监听

Expand Down

0 comments on commit 70e5489

Please sign in to comment.