-
Notifications
You must be signed in to change notification settings - Fork 79
PaddleCloud 开发文档
gongweibao edited this page Sep 7, 2017
·
16 revisions
- PaddleCloud Server: 基于Django开发的WebServer,包括网站页面的serve,提交Kubernetes的逻辑实现
- PaddleCloud Client:基于Go语言开发的命令行程序,实现了提交PaddleCloud集群任务的逻辑,同时也是PaddleCloud File System(PFS)的客户端,可以在本地操作云端数据。
- PFS Server:PaddleCloud提供的云端文件存储,实现了对大文件的上传/下载/上传等操作。
|--demo // 提交PaddleCloud集群训练的Demo代码
|--doc // 一些Design Doc和使用文档
|--docker // 用来构建Job/PFS-Server的Docker Image的一些脚本
|--go
|-- paddlecloud // PaddleCloud客户端源码
|-- filemanager // PFS客户端/服务端源码
`-- cmd
|-- paddlecloud // PaddleCloud客户端主函数入口(包括PFS的客户端)
`-- pfsserver // PFS Server的主函数入口
|-- k8s // 一些k8s的启动脚本
`-- paddlecloud // PaddleCloud Server源码,基于Django REST Framework实现的WebServer.
|-- static // 全局静态文件存储目录,包括css,js以及图片等
|-- notebook // Jupyter Notebook相关的API实现以及用户注册/登录等相关API的实现。
|-- paddlejob // 在Kubernetes集群启动PaddlePaddle Job相关的源码
`-- paddlecloud
|-- settings.py // Django的配置文件
`-- templates // HTML模板文件,包括首页,Footer等。
- 创建新的View实例,并实现不同HTTP请求(get/post/put/update/...)的处理逻辑,例如:
class JobsView(APIView): permission_classes = (permissions.IsAuthenticated,) // 表示需要认证的API def get(self, request, format=None): // 处理GET请求 ...
- 在
padlecloud/paddlecloud/urls.py
中添加新的URL并绑定到上一步创建的View中:url(r"^api/v1/jobs/", paddlejob.views.JobsView.as_view()),
- 更多Django REST Framework的文档详见:http://www.django-rest-framework.org
- PaddleCloud Server
- 构建Server端的Docker Image:
cd <project_root> && docker build -t paddlepaddle/paddlecloud .
- 基于Kubernetes的部署:https://github.com/PaddlePaddle/cloud#run-on-kubernetes
- 本地部署:https://github.com/PaddlePaddle/cloud#run-locally-without-docker
- 构建Server端的Docker Image:
- PaddleCloud Client
cd <project_root>/go/cmd/paddlecloud && go build
- PFSServer
- 构建PFS Server端的Docker Image:
cd <project_root>/go/cmd/paddlecloud && GOOS=linux GOARCH=amd64 go build cd <project_root>/go && docker build . -t <pfs-docker-image-name>
- 基于Kubernets的部署:
首先需要改动
pfs_service.yaml
和pfs_deployment.yaml
里边的配置项目,然后在启动,如kubectrl create -f pfs_service.yaml kubectrl create -f pfs_deployment.yaml ``` 配置文件模板在:<project_root>/k8s/
- 构建PFS Server端的Docker Image: