FATE官方库里面有详细的文档,支持中文!
我是用docker安装部署的
所以要做一些准备
sudo nano /etc/docker/daemon.json
{
"registry-mirrors":[
"http://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
"http://registry.docker-cn.com"
] ,
"insecure-registries":[
"docker.mirrors.ustc.edu.cn",
"registry.docker-cn.com"
]
}
systemctl restart docker.service
2.设置镜像管理
为了后期更好看日志,进入容器,所以使用一个管理docker的容器
docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name portainer docker.io/portainer/portainer
官方中文单机部署安装指南
我当前使用的是1.7.0版本的fate
1.配置环境并pull镜像
先加环境变量version,别担心,ssh关了这个就没了
export version=1.7.0
docker pull federatedai/standalone_fate:${version}
开始悠长的下载,可以先去喝杯咖啡。
2.启动
docker run -d --name standalone_fate -p 8080:8080 federatedai/standalone_fate:${version};
此时fate容器已经开启
http://yourIP:8080端口可以访问FateBoard,默认账户名和密码都是admin
进入容器
docker exec -it $(docker ps -aqf "name=standalone_fate") bash
或者你用9000端口那个容器进入
3.Toy测试
进入docker容器里面后,已经环境变量给你配置完毕了,直接用
flow test toy -gid 10000 -hid 10000
看到success输出说明ok了。
此时你也可以登陆FateBoard看效果 http://yourIP:8080
4.单元测试
fate_test unittest federatedml --yes
这个等待时间稍微有点长
看到出现
there are 0 failed test
说明ok了
进入fate容器
切换目录,保证你在这个目录下
cd /data/projects/fate/examples/dsl/v2/homo_nn/mnist_demo
readme.md写了教程,我只是按照步骤执行
python ../../../../scripts/download_mnist_data_as_images.py
下载速度会很慢,此时用那个Portainer的命令行就会断连接,那么就用ssh中进行连接
docker exec -it $(docker ps -aqf "name=standalone_fate") bash
ps:下载实在太慢,推荐使用阿里云服务器啥的,网络会给你配置,学校服务器因为限制所以贼慢。
2.修改bind local path
mnist_demo文件夹里面有个bind_local_path.json文件
把里面$PROJECT_BASE改成你绝对路径
比如我现在在容器里,$PROJECT_BASE就是/data/projects/fate
提交
vi bind_local_path.json
flow table bind -c bind_local_path.json
3.提交job
在这里也需要修改
主要就是mnist_conf.json文件里面的namespace和table_name要和bind_local_path.json里面对应相等
flow job submit -c mnist_conf.json -d mnist_dsl.json
此时可以登陆http://127.0.0.1:8080看你的job