Ошибка при попытке запустить testnet в учебнике Cosmos SDK - PullRequest
0 голосов
/ 14 октября 2018

Я следовал учебному руководству по Cosmos SDK здесь , и я получил следующую ошибку при запуске make localnet-start

docker-compose down
Removing network cosmos-sdk_localnet
WARNING: Network cosmos-sdk_localnet not found.
panic: Panicked on a Sanity Check: Could not create directory /gaiad/node0/gaiad. mkdir /gaiad/node0: permission denied

goroutine 1 [running]:
github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/common.PanicSanity(0xd34fc0, 0xc420069f40)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/common/errors.go:224 +0xe4
github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/config.EnsureRoot(0x7fffbc1c4f0e, 0x12)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/config/toml.go:27 +0x367
github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/cmd/tendermint/commands.ParseConfig(0x10965e0, 0xc420ab3b90, 0x1)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/cmd/tendermint/commands/root.go:37 +0xf2
github.com/cosmos/cosmos-sdk/server.interceptLoadConfig(0xeb88ad, 0xeb89c5, 0x7)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/server/util.go:83 +0x15b
github.com/cosmos/cosmos-sdk/server.PersistentPreRunEFn.func1(0xc420b0f8c0, 0xc420484580, 0x0, 0x8, 0x0, 0x0)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/server/util.go:50 +0x88
github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/cli.concatCobraCmdFuncs.func1(0xc420b0f8c0, 0xc420484580, 0x0, 0x8, 0x0, 0x0)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/cli/setup.go:115 +0x7d
github.com/cosmos/cosmos-sdk/vendor/github.com/spf13/cobra.(*Command).execute(0xc420b0f8c0, 0xc420484500, 0x8, 0x8, 0xc420b0f8c0, 0xc420484500)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/spf13/cobra/command.go:677 +0x57e
github.com/cosmos/cosmos-sdk/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0xc420b0eb40, 0xdb7580, 0xc420091e01, 0xc42000ad00)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/spf13/cobra/command.go:783 +0x2e4
github.com/cosmos/cosmos-sdk/vendor/github.com/spf13/cobra.(*Command).Execute(0xc420b0eb40, 0xc42000ad00, 0xc420091ed8)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/spf13/cobra/command.go:736 +0x2b
github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/cli.Executor.Execute(0xc420b0eb40, 0x1021150, 0x2, 0xc420a8a480)
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/vendor/github.com/tendermint/tendermint/libs/cli/setup.go:89 +0x4e
main.main()
    /Users/ryancheng/go/src/github.com/cosmos/cosmos-sdk/cmd/gaia/cmd/gaiad/main.go:38 +0x214
chmod: /gaiad: Operation not permitted
chmod: /gaiad: Operation not permitted
make: *** [localnet-start] Error 1

Я пытался использовать sudo, но получил ту же ошибку.Есть идеи, почему?Заранее спасибо.

1 Ответ

0 голосов
/ 22 октября 2018

Кажется, что проблема прямо над выводом:

паника: запаниковала при проверке работоспособности: не удалось создать каталог / gaiad / node0 / gaiad.mkdir / gaiad / node0: разрешение отклонено

Что происходит, «localnet» должен предварительно создать конфигурацию для всех узлов, прежде чем он сможет запустить узел.По умолчанию это выполняется в папке build/, после чего эта папка используется совместно с докером в качестве тома (/gaiad).Теперь, похоже, что докер не может писать в эту папку по какой-то причине.Остальная часть ошибки показывает, что gaiad не смог прочитать конфигурацию (поскольку мы не могли ее записать) и что он не может изменить владельца папки, которую мы не создали.

Для устранения неполадокдалее, мне нужно знать, какую операционную систему вы используете и какие разрешения вы настроили для докера.Например, в случае OSX вам нужно явно указать демону Docker (маленький значок приложения вверху), что у вас есть том, который вы можете присоединить в папке build/.В случае с Linux у вас может быть включен SELinux, но эта часть описана в файле compose.На Windows ... не проверял в последнее время.

...