前置条件
- centos7
- Go 1.14+
- C tooling
- Postgres
- Redis
安装或升级go
推荐使用
1.15.7
其他版本编译有问题
下载并解压
yum remove golang
rm -rf /usr/local/go
wget https://golang.org/dl/go1.15.7.linux-amd64.tar.gz
tar -C /usr/local -xf go1.15.7.linux-amd64.tar.gz
rm -f go1.15.7.linux-amd64.tar.gz
ln -s /usr/local/go/bin/go /usr/bin/go
配置GOROOT、GOPATH环境变量
vi ~/.bash_profile
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
export GOPATH=/root/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
使环境变量生效
source ~/.bash_profile
检查安装
go version
c tooling
yum install make automake gcc gcc-c++ kernel-devel
pg
mkdir -p /data/storj-test/postgresql
docker run -d --name storj-postgres -v /data/storj-test/postgresql:/var/lib/postgresql/data -e POSTGRES_HOST_AUTH_METHOD=trust -p 5432:5432 postgres
docker exec -it storj-postgres createdb -U postgres teststorj
redis
创建数据目录
mkdir -p /data/storj-test/redis/data
docker rm -f stroj-redis
docker run -d --name stroj-redis\
-v /data/storj-test/redis/data:/data \
-p 6379:6379 \
redis:5.0.4
安装和配置
构建storj
git clone https://github.com/storj/storj.git
cd storj
git checkout main
git pull
make install-sim
构建satellite web console
cd web/satellite
npm install
npm run build
GOOS=js GOARCH=wasm go build -o access.wasm storj.io/storj/satellite/console/wasm
mv access.wasm static/wasm/
cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" static/wasm/
cd ..
构建storagenode web console
cd web/storagenode
npm install
npm run build
生成配置
storj-sim network setup --host 0.0.0.0 --postgres=postgres://postgres@localhost:5432/teststorj?sslmode=disable --satellites 2 --storage-nodes 10 --redis 127.0.0.1:6379 --config-dir /data/storj-test/config
运行
storj-sim network run --config-dir /data/storj-test/config --redis 127.0.0.1:6379 --satellites 2 --storage-nodes 10
生成端口格式: “1PXXE”,P是peer类别, XX 是实例索引, E是endpoint.
- Gateways start from port 11000
- Version control is at port 12000
- Bootstrap server is at port 13000
- Satellites start from port 10000
- Satellite Console starts on port 10002
- Storage Nodes public ports start from port 14000
- Storage Nodes private ports start from port 14001
gateway
- server.address: 0.0.0.0:11000 (minio web console)
- debug.addr: 0.0.0.0:11009
satellite
- admin.address: 0.0.0.0:10005
- console.address: 0.0.0.0:10002
- server.address: 0.0.0.0:10000
- server.private-address: 0.0.0.0:10001
- debug.addr: 0.0.0.0:10009
storagenode
- console.address: 0.0.0.0:13002
- server.address: 0.0.0.0:13000
- server.private-address: 0.0.0.0:13001
- debug.addr: 0.0.0.0:13009
versioncontrol
- debug.addr: 0.0.0.0:12009
- address: 0.0.0.0:12000
查看web控制台,127.0.0.1替换成你的ip
- gateway web console:127.0.0.1:11000 或 127.0.0.1:11001
需要key,可以查看配置文件获取/data/storj-test/config/gateway/XX/config.yaml
,XX目前代表0或1 只生成了两个satellite,每个satellite对应一个gateway - satellite web console:127.0.0.1:10002 或127.0.0.1:10012
需要先注册,不用激活直接可以登录
storagenode web console:127.0.0.1:13002 一直到 127.0.0.1:13092
还有bug,启动后发现根本就没有使用postgres,数据存在sqllite中
清除测试网络数据&重建数据库
storj-sim network destroy --config-dir /data/storj-test/config
docker exec -it storj-postgres psql -U postgres
postgres=#drop database teststorj;
postgres=#create database teststorj;