目录
Unable to find image 'hello-world:latest' locally 问题的解决:
开始Brainframe的安装:使用Brainframe读取下载的秘钥:
引言:
近期面试了一个做图像识别的人工智能公司,公司让熟悉旗下开发的Brainframe框架,经过一段时间的了解和学习,这个框架可以加载官网上各种各样的算法胶囊从而实现人脸识别,躯干识别以及车辆识别诸多识别功能。但这个框架要运行在Linux的Ubuntu发行版本上且安装过程稍微有一些繁琐,在这里写一下按照官方文档在Ubuntu下搭建Brainframe视觉分析框架的步骤,以便后期的回顾。
过程:
下载Brainframe安装包:
首先打开官方安装文档网址:
Downloads - BrainFrame Documentation
在官方文档中首先下载适用于Ubuntu 18.04版本的Brainframe官方安装包,如图:
在网页中找到上图,并点击红色箭头所指的Download,在等待下载的过程中,我们在这里点击Getting Started,进入到开始安装的导航,如图:
搭建Brainframe命令接口:
首先将 Brainframe-cli (命令接口)安装,按照说明在终端中输入以下命令,如图:
这里提一嘴,如果在执行:
sudo -H pip3 install --upgrade brainframe-cli
命令时,出现了下面的报错:
可以进行换源的操作,这里给出一张引用的图片:
换源操作再次执行命令之后,还可能出现如下的报错:
报错内容:
ERROR: Cannot uninstall ‘PyYAML’.
It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.”
这时你可以尝试手动删除依赖包“PyYAML”,具体的命令如下:
find / -name *PyYAML*
找到之后手动进行删除,一般情况下位于此目录下:
/usr/local/lib/python3.7/dist-packages/PyYAML-6.0.dist-info
然后再次输入cli命令接口的安装命令进行安装即可。
当安装完成之后,应该是可以使用brainframe命令的,我们现在输入命令:
brainframe --help
如图:
解决下载Docker速度慢的方法:
如图已经显示除了brainframe的一些命令,我们现在输入命令:
sudo brainframe install
好了,现在命令接口我们已经基本安装完毕,我们现在来安装brainframe本体,如图,但是我们发现brainframe的下载速度非常缓慢,官网上给出了解决办法,
同时,官网上给出了解决办法:
点击这里的these instructions,这里给出了解决方式,如图:
安装Docker :
这里的操作其实本身是一种换源操作,这里其实我们注意到brainframe本身是依托于Docker镜像来工作的,这里的换源操作也是对根目录下etc下的Docker文件中的daemon.json文件做编辑,我们这时就要检查系统中是否已经安装的Docker,输入命令:
docker info
如图,我们的系统中并没有安装docker, 同时终端中提示我们执行sudo apt install docker.io命令,我们先不执行这一条命令,在浏览器中的地址栏输入这个网址,我们对docker进行手动形式的安装:
网址:Install Docker Engine on Ubuntu
点击网址进入之后,需要注意到这个词条:
这个词条的意思是,让我们在安装docker之前要通过下方所给出的命令对计算机进行移除旧版本docker的操作,旧版本的docker名字这里也给了出来,都有docker,docker.io,docker-engine,这里你注意到我用红色标注的docker.io就是上面我们输入docker info系统提示我们输入的命令。下面我们输入下方命令来对计算机系统中之前的旧版本docker进行移除操作:
sudo apt-get remove docker docker-engine docker.io containerd runc
如图,终端显示我们之前并没有安装docker-engine ,接下来我们开始docker的安装,如图:
输入命令:
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
安装完成之后如图所示。
接下来我们开始添加docker官方的GPG秘钥,如图:
在终端中分别输入这两段命令和脚本语言,输入命令:
sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
如图所示;
然后我们再更新源,输入命令:
sudo apt-get update
更新源完成之后,我们再安装docker本体的最新版本,如图:
输入命令:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
安装完成之后我们通过docker是否能输出hello-world来判断docker是否已经安装成功,输入命令:
sudo docker run hello-world
如图,成功通过docker将helllo-world输出了出来,代表我们将docker安装成功。
Unable to find image 'hello-world:latest' locally 问题的解决:
但是这里出现了一个问题,如图:
问题描述为:Unable to find image 'hello-world:latest' locally
这个问题的可能原因是在中国大陆地区因为网络的问题无法拉取到docker的镜像,我们可以通过换源的方式尝试解决,方法步骤如下:
Step1:进入到制定目录下
进入到/etc/docker路径下,输入命令:
cd /etc/docker
Step2:创建并编辑daemon.json文件
然后,创建daemon.json文件并对其进行编辑,输入命令:
touch daemon.json
命令输入完成之后如图所示,终端提示我们权限不够:
所以我们命令前面加上sudo:
sudo touch daemon.json
然后通过vim对daemon.json文件进行编辑,我们更换国内的阿里云源,这里首先检查一下ubuntu中是否已经安装有Vim编辑器,输入命令:
vim --version
如图,我的ubuntu中已经安装过了Vim编辑器,如果你的ubuntu中没有安装vim,输入命令:
sudo apt-get install vim
安装完成之后按q退出,然后输入命令:
sudo vim daemon.json
将下面的内容粘贴到daemon.json中:
{
"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"]
}
然后保存退出。
Step3:重载json文件
对当前路径下的daemon文件进行重载,输入命令:
sudo systemctl daemon-reload
Step4:重新启动Docker:
然后我们再重新启动docker,输入命令:
sudo systemctl restart docker
检查一下docker的运行情况,输入命令:
sudo systemctl status docker
如上图红色箭头所指,docker已经在运行中,状态为active!
问题解决:
然后我们再重新通过docker对hello-world进行输出,输入命令:
sudo docker run hello-world
稍等片刻,这次成功地将hello-world输出了!
问题解决。
进行Brainframe Server的安装:
Choice 1:
安装brainframe server有两种方法,在这之前我们需要知道docker-compose为brainframe的必要依赖,实际上sudo brainframe install 命令中也涉及到了docker-compose的安装,不过如果没有换源,速度会非常慢,最后甚至导致超时,我们可以可以先进行docker-compose的安装:
你可以在终端中输入命令:
sudo pip install -i 镜像源 docker-compose
这里提供几个镜像源可以用于更换:
清华大学:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:https://mirrors.aliyun.com/pypi/simple
中国科学技术大学 https://pypi.mirrors.ustc.edu.cn/simple
豆瓣:http://pypi.douban.com/simple
直接将地址和上面命令上的镜像源替换即可。
安装完docker-compose之后我们再对brainframe本体进行安装,输入命令:
sudo brainframe install
两次ERROR报错未解决:
如图,在安装的过程中出现了报错:
问题描述:
ERROR: launchpadlib 1.10.13 requires testresources, which is not installed.
ERROR: brainframe-cli 0.2.0 has requirement packaging<21.0,>=20.4, but you'll have packaging 23.0 which is incompatible.
这里我们先进行跳过,进行正常安装:
连接到Brainframe服务器:
这里的安装过程比较漫长,我们需要等较长的时间,完成之后如图所示 :
这时我们进行连接服务器的操作,输入命令:
sudo brainframe compose up -d
然后再输入命令查看实时日志:
sudo brainframe compose logs -f
如图:
如图,brainframe现在已经连接上了服务器。
OK,此时brainframe server就搭建完成了。
Choice 2:
如果我们要直接进行brainframe的安装,也就是不单独安装docker-compose,此时我们就需要将pip默认下载的路径更换为镜像源,具体的命令如下:
sudo pip config set global.index-url 镜像源
这里的镜像源依旧用我写在前面的地址进行替换即可,运行完此条命令之后,直接进行brainframe server的安装:
输入命令:
sudo brainframe install
安装完之后与上面的情况一样,然后我们进行brainframe 客户端的安装。
开始Brainframe的安装:使用Brainframe读取下载的秘钥:
然后我们将开始时下载的brainframe压缩文件中的文件夹提取出来,并在终端中打开,如图:
然后在此路径下输入命令进行brainframe的安装:
bash install.sh
如图,系统提示我们输入下一个命令:
然后输入命令将brainframe启动:
bash brainframe_client.sh
如图,弹出了安装界面,点击接受,开始brainframe的安装:
安装成功,但是没有授权的秘钥,获取秘钥的方法也很简单,如图:
在Aotu官网注册账号拿到License File秘钥:
使用Brainframe读取下载的秘钥:
这里点击到Aotu website里面,店家Sign up注册一个新账号,然后在Account Page页面中选择License Key选项,网站会自动生成秘钥。然后我们再将秘钥下载下来即可。
如图,这是下载下来的秘钥:
使用Brainframe读取下载的秘钥:
然后我们在安装成功的页面中点击配置按钮,在弹出来的页面中点击授权配置,如图:
在弹出来的页面中直接将刚才下载好的License File文件拖动进这个页面:
Brainframe会自动加载秘钥,然后点击更新许可证,你会看到Brainframe是经过永久授权的。
读取秘钥完成:
好了,更新完许可证就可以进去Brainframe本体了。
安装成功。
如图,成功进入,至此Ubuntu下Brainframe视觉平台的搭建就已经完成了。
参考资料:
Unable to find image ‘hello-world:latest‘ locally,跑不起来docker hello-world可以尝试_m0_47648607的博客-CSDN博客 [2021] 完美解决Unable to find image ‘hello-world:latest‘ locally 问题_Leopold_Fitz的博客-CSDN博客
Get BrainFrame - BrainFrame Documentation
https://blog.csdn.net/JineD/article/details/124774570 https://blog.csdn.net/weixin_44694462/article/details/108307040