Second node not starting

New second node not starting. In docker ps -a have cycling restart.
Log:
Error: Error starting master database on storagenode: database: database info does not exist stat config/storage/info.db: no such file or directory
storj.io/storj/storagenode/storagenodedb.(*DB).openExistingDatabase:344
storj.io/storj/storagenode/storagenodedb.(*DB).openDatabases:313
storj.io/storj/storagenode/storagenodedb.Open:245
main.cmdRun:151
storj.io/private/process.cleanup.func1.4:353
storj.io/private/process.cleanup.func1:371
github.com/spf13/cobra.(*Command).execute:840
github.com/spf13/cobra.(*Command).ExecuteC:945
github.com/spf13/cobra.(*Command).Execute:885
storj.io/private/process.ExecWithCustomConfig:88
storj.io/private/process.ExecCustomDebug:70
main.main:330
runtime.main:203
But path is present in file system. Database files - not.
Should the new node create new files if they does not exist, or not?
My start options:
–mount type=bind,source="/home/user/.local/share/storj/identity/storagenode1",destination=/app/identity
–mount type=bind,source="/storj1",destination=/app/config
–mount type=bind,source="/db-storj1",target=/app/db
–name storagenode1 storjlabs/storagenode:latest
In the config.yaml :
storage2.database-dir: “/app/db”
Whats a problem?

Maybe this helps, check linked threads as well: Error starting master database

1 Like

So… I touched empty db files:
info.db
orders.db
piece_expiration.db
pieceinfo.db
piece_spaced_used.db
reputation.db
storage_usage.db
used_serial.db
satellites.db
notifications.db
heldamount.db
pricing.db
And node starting. But not shows satellites in web dashboard.
Maybe i need to replace satellites.db from the first node?

Nope… satellites now is showing.
It’s bug in new version?

Could you describe what you exactly did?
because I have tried, I specified an empty folder for the storage and all went well - it’s created an config.yaml file and storage folder and all databases there.

I created new node. But first start was been with wrong options like this:
–mount type=bind,source="/home/user/.local/share/storj/identity/storagenode1",destination=/app/identity
–mount type=bind,source="/storj1",destination=/app/config
–mount type=bind,source="/db-storj1",target=/app/db
–name storagenode storjlabs/storagenode:latest
Then i added right option:
–mount type=bind,source="/home/sewir/.local/share/storj/identity/storagenode1",destination=/app/identity
–mount type=bind,source="/storj1",destination=/app/config
–mount type=bind,source="/db-storj1",target=/app/db
–name storagenode1 storjlabs/storagenode:latest
And node created container and config.yaml, and storage folder with temp, blob, etc. But without all db-files. Until i created empty db-files manually, node was have errors in the log.

Yes, if the destination folder is not empty, the DB files will not be created. If the DB files are exist, but config.yaml is not, it will fail to start because of DBs are exist.
The only different mountpoint for databases is not enough, you should also specify the storage2.database-dir: option in the config file or --storage2.database-dir option in the storagenode setup command.
Since it’s a docker version, it doesn’t transfer any setup option to the config file: