哪些网站的做的好看,柬埔寨网站开发,seo优化教程视频,天津网络网站公司官方提供了modelbox webUI教程#xff0c;但是#xff0c;该教程有以下缺点#xff1a;
在容器刚启动时#xff0c;配置中的访问控制列表没有包含本地PC的IP#xff0c;这导致如果想从本地PC访问远程服务器上容器的webUI#xff0c;需要登入容器修改配置文件#xff0c…官方提供了modelbox webUI教程但是该教程有以下缺点
在容器刚启动时配置中的访问控制列表没有包含本地PC的IP这导致如果想从本地PC访问远程服务器上容器的webUI需要登入容器修改配置文件再重启modelbox费时费力。新增项目对宿主机不可见。新增项目会保存在容器内如果不手动复制的话宿主机无法看到。ssh登陆麻烦。官方教程会让你登陆到容器但有时你只想登陆到宿主机开发。可是让新增项目对宿主机可见是一个问题。重启命令冗长。单纯执行modelbox restart会导致报错所以需要复制输入整个路径$HOME/modelbox-service/modelbox restart才能重启。
为了能开箱即用本文稍微调整了Dockerfile并附加了脚本便于使用。
基础构建脚本
首先为modelbox开发容器编写Dockerfile:
FROM registry-cbu.huawei.com/modelbox/euler/modelbox-develop-mindspore_2.1.0-cann_6.3.2-d910b-euler-aarch64:latest# install ytorch and npu plugin
COPY torch-1.11.0-cp37-cp37m-linux_aarch64.whl /root/torch-1.11.0-cp37-cp37m-linux_aarch64.whl
COPY torch_npu-1.11.0.post1-cp37-cp37m-linux_aarch64.whl /root/torch_npu-1.11.0.post1-cp37-cp37m-linux_aarch64.whlRUN pip install /root/torch-1.11.0-cp37-cp37m-linux_aarch64.whl
RUN pip install /root/torch_npu-1.11.0.post1-cp37-cp37m-linux_aarch64.whl# edit conf file
COPY ./res/add_acl.py /root/add_acl.py
COPY ./res/restart_modelbox.sh /root/restart_modelbox.sh
RUN pip install tomlRUN modelbox-tool develop -s \ python add_acl.py \ $HOME/modelbox-service/modelbox restart其中
在Dockerfile内需要先执行modelbox-tool develop -s这之后才会生成modelbox的配置文件然后才能修改ACL属性。res/add_acl.py用于替换conf文件里的acl配置项添加本地PC IP读者可以替换成自己的PC IP。
在当前目录创建res目录创建add_acl.py脚本
import toml
import oshome os.environ[HOME]# 读取文件
with open(f{home}/modelbox-service/conf/modelbox.conf) as file:config toml.load(file)# 获取[acl]的值
acl config[acl]# 添加新元素
acl[allow].append(10.78.8.148) # 将这个替换成你的本地PC IP# 将修改后的值写回文件
with open(f{home}/modelbox-service/conf/modelbox.conf, w) as file:toml.dump(config, file)然后添加res/restart_modelbox.sh内容简洁如下是用于快速重启modelbox的。
$HOME/modelbox-service/modelbox restart然后启动脚本start.sh如下
sudo docker build -t modelbox_dev:latest .
sudo docker run --rm -it -v ./projects:/root/projects -e ASCEND_VISIBLE_DEVICES2-3 --nethost modelbox_dev:latest /bin/bash其中
-v ./projects:/root/projects会把宿主机的projects目录挂到容器内这样在容器里可以新建项目在宿主机可以用vscodessh修改项目。-e ASCEND_VISIBLE_DEVICES2-3是用于挂载npu的2和3号卡。--nethost会同步宿主机和容器的网络便于登陆访问容器web UI的1104端口
使用方法
使用方式很简单
在Dockerfile所在目录执行bash start.sh就会启动modelbox容器。在容器内执行bash restart_modelbox.sh确保modelbox重启并生效配置。访问webUI的1104端口新建项目之后在宿主机的projects目录可见