搭建hyperledger cello
执行步骤:
步骤 1. make setup-master 下载一些cello services 的镜像
步骤 2. make start 起cello services服务
在运行中会遇到的错:
ERROR: for user-dashboard Cannot start service user-dashboard: Mounts denied:
The path /opt/cello/baas
is not shared from OS X and is not known to Docker.
You can configure shared paths from Docker -> Preferences… -> File Sharing.
See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.
解决方法:
1. 在cello的目录下,cd /opt/cello
2. sudo mkdir baas
3. 然后打开docker的ui ,在file share 中添加路径 /opt/cello/baas就可以了
步骤 3. make redeploy service=dashboard (官方文档中的这步会报错,不要执行这一步,执行步骤4)
将 redeploy 替换成docker stack deploy 就可以了
步骤 4. make docker stack deploy service=dashboard
步骤 5. 成功之后打开本地8080端口,默认的账号密码是 admin:pass(这个是 operation dashboard.)
步骤 6. 然后打开本地的8081端口,默认的账号密码是:admin:pass(这是user dashboard)
步骤 7. 将Docker主机设置为工作节点(Docker Daemon Setup)
- Work with MacOS
起一个swarm 的服务,监听在2375端口
docker run -d -v /var/run/docker.sock:/var/run/docker.sock -p 0.0.0.0:2375:2375 bobrik/socat TCP-LISTEN:2375,fork UNIX-CONNECT:/var/run/docker.sock
(0.0.0.0:2375:2375中 ,0.0.0.0 是本机的所有ip,本机ip有一个127.0.0.0,还有一个路由分配的ip :192.168),在我的docker 的容器中有一个进程的ip也是127.0.0.0,所以在添加host的ip为127的时候添加不上,所以要添加192的ip
查看本地的ip :
ifconfig
这是在mac上部署的work node ,在ubuntu或者linux上部署,查看官方文档http://cello.readthedocs.io/en/latest/setup_worker_docker/
步骤 8. 添加host
1. 链接本地host,试试能不能链接上(这里的ip换成自己的ip)
telnet 192.168.1.195 2375
- 添加host
- 添加hostName
- 添加Daemon URL
- 将hostType 改成swarm
(本地管理docker,必须通过链接docker的swarm,然后才能管理docker 里边的东西,docker run -d -v /var/run/docker.sock:/var/run/docker.sock -p 0.0.0.0:2375:2375 bobrik/socat TCP-LISTEN:2375,fork UNIX-CONNECT:/var/run/docker.sock 这句代码是起一个swarm的服务,监听在2375端口,使本机能够链接docker的host)