4

我正在尝试使用 Puppeth 设置一个私有以太坊测试网络(正如Péter Szilágyi 在 Ethereum devcon 3 2017 中演示的那样)。我在 macbook pro (macOS Sierra) 上运行它。

当我尝试设置 ethstat 网络组件时,我收到“docker 配置不正确:bash: docker: command not found”错误。我有 docker 正在运行,我可以在终端中很好地使用它,例如 docker ps。

以下是我采取的步骤:

What would you like to do? (default = stats)
 1. Show network stats
 2. Manage existing genesis
 3. Track new remote server
 4. Deploy network components
> 4

What would you like to deploy? (recommended order)
 1. Ethstats  - Network monitoring tool
 2. Bootnode  - Entry point of the network
 3. Sealer    - Full node minting new blocks
 4. Wallet    - Browser wallet for quick sends (todo)
 5. Faucet    - Crypto faucet to give away funds
 6. Dashboard - Website listing above web-services
> 1

Which server do you want to interact with?
 1. Connect another server
> 1

Please enter remote server's address:
> localhost
DEBUG[11-15|22:46:49] Attempting to establish SSH connection   server=localhost
WARN [11-15|22:46:49] Bad SSH key, falling back to passwords   path=/Users/xxx/.ssh/id_rsa      err="ssh: cannot decode encrypted private keys"
The authenticity of host 'localhost:22 ([::1]:22)' can't be established.
SSH key fingerprint is xxx [MD5]
Are you sure you want to continue connecting (yes/no)? yes
What's the login password for xxx at localhost:22? (won't be echoed)
>
DEBUG[11-15|22:47:11] Verifying if docker is available         server=localhost
ERROR[11-15|22:47:11] Server not ready for puppeth             err="docker configured incorrectly: bash: docker: command not found\n"

以下是我的问题:

  1. 是否有任何文档/教程描述如何正确设置此远程服务器。或者只是一般的傀儡?
  2. 我可以不使用 localhost 作为“远程服务器地址”吗
  3. 关于为什么找不到 docker 命令的任何想法(它已安装并正在运行,我可以在终端中正常使用它)。
4

2 回答 2

0

我想我找到了这个问题的根本原因。SSH 守护程序使用默认路径编译。如果您ssh使用特定命令(shell 除外)访问机器,您将获得该默认路径。这不包括/usr/local/bin例如,docker在我的情况下住在哪里。

我在这里找到了解决方案:https ://serverfault.com/a/585075 :

  • 编辑/etc/ssh/sshd_config并确保它包含PermitUserEnvironment yes(您需要使用 编辑它sudo
  • 用你想要的路径创建一个文件~/.ssh/environment,在我的例子中: PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

当您现在运行时,ssh localhost env您应该会看到PATH与您输入的任何内容相匹配的~/.ssh/environment

于 2018-04-26T09:02:59.167 回答
0

这就是我所做的。

  1. 对于 docker,您必须使用 docker-compose 二进制文件。你可以在这里找到它。

  2. 此外,您必须确保 ssh 服务器正在您的本地主机上运行并且已生成密钥。

  3. 我没有找到任何关于 puppeth 的文件。

于 2017-11-23T16:52:38.303 回答