Storj Non-Docker using SystemD
This is just basic hints, not a full guide⌗
This assumes you have some basic linux knowledge⌗
Download identity and storagenode from github (I like to download these things to /opt/storj/
)
Create auth token HERE
Create identity HERE (This took about 4 hours on my node | E3-1280 V2)
storagenode setup
. This will create config file and other needed files in ~/.local/share/storj/storagenode/config.yaml
and ~/.local/share/storj/storagenode/storage
Now you need to edit ~/.local/share/storj/storagenode/config.yaml
and make changes as needed (wallet, identity files and data storage locations, email, storage size)
Then move files from ~/.local/share/storj/storagenode/storage
to your desireded data storage location
Then move ~/.local/share/storj/storagenode/
to your desired config
folder location that will be passed with systemd below
Now you can continue to the next step of configuring systemd
SystemD Config⌗
Make sure to create storj user
nano /etc/systemd/system/storj.service
# This is a SystemD unit file for the Storage Node
# To configure:
# - Update the user and group that the service will run as (User & Group below)
# - Ensure that the Storage Node binary is in /usr/local/bin and is named storagenode (or edit the ExecStart line
# below to reflect the name and location of your binary
# - Ensure that you've run setup and have edited the configuration appropriately prior to starting the
# service with this script
# To use:
# - Place this file in /etc/systemd/system/ or wherever your SystemD unit files are stored
# - Run systemctl daemon-reload
# - To start run systemctl start storagenode
[Unit]
Description = Storage Node service
After = syslog.target network.target
[Service]
Type = simple
User = storj
Group = storj
ExecStart = /opt/storj/bin/storagenode run --config-dir "/data/storj/config"
Restart = always
NotifyAccess = main
[Install]
Alias = storagenode
WantedBy = multi-user.target
systemctl start storj
Make sure it’s working journalctl -f -u storj
If it’s working then enable it systemctl enable storj
You are now good to go :-) enjoy the free moneys⌗
If you’d like to use nginx to not have to use port do the following
apt install nginx
unlink /etc/nginx/sites-enabled/default
nano /etc/nginx/conf.d/storj.local
server {
listen 80;
server_name storj.local;
allow 192.168.1.0/24; # allow only internal network
location / {
proxy_pass http://192.168.9.171:14002/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Make sure to add storj.local into your local DNS server (I use AdGuardHome, PiHole is another great one)