繁体   English   中英

无法使用 Ganache GUI 连接到 Truffle 或 testrpc

[英]Can not connect to Truffle or testrpc with Ganache GUI

我的 Windows 10 上有来自官方网站 appx 的 Ganache GUI。当我在控制台 (WSL) 中运行 Truffle 或 testrpc 网络并尝试在设置中从 Ganache GUI 连接那里时,我在带有端口的文本框旁边收到错误消息:

该端口被另一个应用程序使用; 请改变它

在此处输入图片说明

端口来自 Truffle 或 testrpc。 我怎样才能在那里连接? 谢谢你。

Ganache UI运行Ganache CLI的实例(即以前称为TestRPC的模拟以太坊实例)。 如果您已经打开了一个控制台窗口,并且该端口的应用程序在端口9545上,那么Ganache UI无法在该端口上启动新实例。

这些是对我有用的步骤:

  • 启动ganache-ui
  • truffle-config.js配置 truffle 的网络:
  networks: {
    development: {
      host: "127.0.0.1",     // Localhost (default: none)
      port: 7545,            // Standard Ethereum port (default: none)
      network_id: "*",       // Any network (default: none)
    },
    ...

  • 运行truffle console (不是truffle develop

我将以下内容添加到我的 .zshrc 或 .bashrc 文件中

# Get WSL Host IP
export WSL_HOST_IP="$(awk '/nameserver/ { print $2 }' /etc/resolv.conf)"

这允许我显示我的主机 ip,因此 WSL2 中的命令可以访问本地主机。

现在在 Ganache GUI 中创建一个工作区,并在服务器 HOSTNAME 设置下选择“0.0.0.0 - 所有接口”。

在您的 truffle 项目中编辑 truffle-config.js 文件并将您的网络开发块设置为:

development: {
  host: process.env.WSL_HOST_IP,
  port: 7545,
  network_id: "*" // Match any network id
}

现在,当您运行 truffle migrate 时,它​​应该连接到 Ganache GUI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM