假如你对IOTA最新的coordicide方案有兴趣,同时手里正好又有一台群晖,那么用它来部署一个goshimmer的测试节点,会给你带来非凡的参与感,也为IOTA社区做了贡献,那么我们来动手吧?
以下过程需要你对linux有稍微的了解。
1.在群晖套件中心安装并启用Docker;
2.打开Docker,在注册表中搜索ubuntu,下载nuagebec/ubuntu。
这一步是获得一个带ssh的ubuntu映像文件,你可以选择下载其他的ubuntu镜像。
3.在镜像中启动你刚才下载完成的映像文件。
3.1 给他取一个你喜欢的容器名字,如shimmer;
3.2.在端口设置页做以下端口映射
本地端口10422:容器端口22:类型TCP
本地端口14626:容器端口14626:类型TCP
本地端口14626:容器端口14626:类型UDP
本地端口14666:容器端口14666:类型TCP
可选:如果需要发送Spam和通过仪表盘查看Spam情形,可以将容器的8080和8081都映射出来
然后点击下一步完成,你就可以在容器中得到一个新的容器;
4. 路由器端口映射(如果你的NAS具有公网地址这步可以跳过)
在路由器的外网端口转换(NAT)将路由器的14626(TCP/UDP)和14666(TCP)映射到NAS
5.用Putty连接到该容器;
注意连接的端口为10422
putty下载官方地址:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
6.在Putty中用root身份登陆;
密码请在容器-详情-日志中或下载页面说明中查找。
7.安装GCC
参考:https://linuxize.com/post/how-to-install-gcc-compiler-on-ubuntu-18-04/sudo输入以下指令
sudo apt update
sudo apt install build-essential
sudo apt-get install manpages-dev
并通过gcc --version可以获得正确的版本信息;
8. go环境手动安装
获得go的安装包并解压到对应的目录
wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz
sudo tar zxvf go1.12.9.linux-amd64.tar.gz -C /usr/local
9. 配置go相关的环境变量
输入:vim ~/.bashrc
添加以下内容,注意不要写到if-fi块里面了。
export GOROOT=/usr/local/go
export GOPATH=/home/taoyx/program_develop/go_demo
export PATH=$PATH:$GOPATH:/usr/local/go/bin
保存并使输入下面的指令使其生效
source ~/.bashrc
10. 下载goshimmer原码
git clone https://github.com/iotaledger/goshimmer.git
11. 编译goshimmer
此步骤耗时很长,需要耐心等待;
cd ~/goshimmer
go build -o shimmer
12. 启动shimmer
第一次启动:记录下自己的NodeID,后面对你有帮助;
~/goshimmer/shimmer --node-enable-plugins "spammer zeromq dashboard"
为了防止session关闭时该进程被杀,后续启动采用以下指令
nohup ~/goshimmer/shimmer --node-enable-plugins "spammer zeromq dashboard"
显示:nohup: ignoring input and appending output to 'nohup.out'
13. (可选)发送Spam
在浏览器输入:
http://nas地址:8080对应端口/spammer?cmd=start&tps=1
14. (可选)Dashboard
http://nas地址:8081对应端口/dashboard
15.查看动态网络
可在以下网页查看自己NodeID的网络连接情况
http://goshimmer.economic-clustering.com/