storj
Setup up and configure your jail, then create user storj
:
pw useradd -n storj -m
Clone and get and install latest version:
git clone -b v1.14.7 https://github.com/storj/storj.git storj
cd storj
go install -race -v storj.io/storj/cmd/...
Create a dir to contanin the identity and storage:
mkdir /mnt/storj
chown -R storj:storj /mnt/storj
In the main host create the file system to be used in the jail:
zfs create tank/storj
Create fstat.storj
with something like:
/tank/storj /jails/storj/mnt/storj nullfs rw 0 0
mkdir /jails/storej/mnt/storj
before starting the jail
Change to user storj
:
su - storj
Setup the node:
/home/storj/go/bin/storagenode setup --config-dir /mnt/storj --identity-dir /mnt/storj/identity
Config lools somethinig like:
contact.external-address: "IP or FQDN:28967"
identity.cert-path: /mnt/storj/identity/identity.cert
identity.key-path: /mnt/storj/identity/identity.key
log.level: info
operator.email: "your email address"
operator.wallet: "your wallet address"
server.address: :28967
server.private-address: 127.0.0.1:7778
server.revocation-dburl: bolt:///mnt/storj/storage/revocations.db
storage.allocated-disk-space: 2.00 TB
storage.path: /mnt/storj/storage
Create an identity:
/home/storj/go/bin/identity --config-dir /mnt/storj/identity create storagenode
this will take hours
Backup before you continue, it should be quick! 🙏 This allows you to restore your Node in case of an unfortunate hardware or OS incident.
Authorize the identity:
/home/storj/go/bin/identity authorize storagenode <email:characterstring>
https://documentation.storj.io/dependencies/identity
Startup using immortal:
pkg install immortal
Create /usr/local/etc/immortal/storj.yml
with something like:
cmd: /home/storj/go/bin/storagenode run --config-dir /mnt/storj/storage --identity-dir /mnt/storj/identity
user: storj
log:
file: /var/log/storj.log
Enable immortaldir_enable
:
sysrc immortaldir_enable="YES"
Start it:
service immortaldir start
Follow up: https://github.com/storj/storj/issues/3935