====== [HOWTO] storj in centos7 ======
Setup disk.
Patch firewalld:
mv /usr/lib/python2.7/site-packages/firewall/core/ipXtables.pyc /usr/lib/python2.7/site-packages/firewall/core/ipXtables.pyc.bck
mv /usr/lib/python2.7/site-packages/firewall/core/ipXtables.pyo /usr/lib/python2.7/site-packages/firewall/core/ipXtables.pyo.bck
cp /usr/lib/python2.7/site-packages/firewall/core/ipXtables.py /usr/lib/python2.7/site-packages/firewall/core/ipXtables.py.bck
Download path:
index 68f14a5203db..2b3d6e4c58be 100644
--- a/src/firewall/core/ipXtables.py
+++ b/src/firewall/core/ipXtables.py
@@ -541,6 +541,8 @@ class ip4tables(object):
self.rich_rule_priority_counts = {}
rules = []
for table in BUILT_IN_CHAINS.keys():
+ if not self.get_available_tables(table):
+ continue
# Flush firewall rules: -F
# Delete firewall chains: -X
# Set counter to zero: -Z
@@ -552,6 +554,8 @@ class ip4tables(object):
rules = []
_policy = "DROP" if policy == "PANIC" else policy
for table in BUILT_IN_CHAINS.keys():
+ if not self.get_available_tables(table):
+ continue
if table == "nat":
continue
for chain in BUILT_IN_CHAINS[table]:
@@ -598,12 +602,13 @@ class ip4tables(object):
def build_default_rules(self, log_denied="off"):
default_rules = {}
- default_rules["security"] = [ ]
- self.our_chains["security"] = set()
- for chain in BUILT_IN_CHAINS["security"]:
- default_rules["security"].append("-N %s_direct" % chain)
- default_rules["security"].append("-A %s -j %s_direct" % (chain, chain))
- self.our_chains["security"].add("%s_direct" % chain)
+ if self.get_available_tables("security"):
+ default_rules["security"] = [ ]
+ self.our_chains["security"] = set()
+ for chain in BUILT_IN_CHAINS["security"]:
+ default_rules["security"].append("-N %s_direct" % chain)
+ default_rules["security"].append("-A %s -j %s_direct" % (chain, chain))
+ self.our_chains["security"].add("%s_direct" % chain)
default_rules["raw"] = [ ]
self.our_chains["raw"] = set()
Apply patch:
patch /usr/lib/python2.7/site-packages/firewall/core/ipXtables.py < ipXtables.path
Follow official instructions to setup docker and pull the data.
\\
The running docker line is something like this:
docker run -d --restart unless-stopped -p 28967:28967 \
-p 127.0.0.1:14002:14002 \
-e WALLET="0x59A9b64xxxxx59c5" \
-e EMAIL="dodger@ciberterminal.net" \
-e ADDRESS="blabla:28967" \
-e BANDWIDTH="30TB" \
-e STORAGE="450GB" \
--mount type=bind,source="/root/.local/share/storj/identity/storagenode/",destination=/app/identity \
--mount type=bind,source="/home/storj",destination=/app/config \
--name storagenode storjlabs/storagenode:beta
Note that the **destination** parameters inside ''mount'' modifiers are ''static'', you must only modify the ''source''.