前言
单机版部署总体而言是比较简单的,但是本着鸡过拔毛,码过留痕的当下人生信条,还是即时记录下。部署过程中有些小的细节也是可以拿捏下,希望可以给有缘人一缕顺风
本文主要三部分:
- milvus部署
- milvus可视化工具attu部署
- 移植到内网部署
环境准备
需要有一个能连互联网的linux环境和版本不过分低的docker。本文部署于CentOS Linux release 7.3.1611 (Core),docker版本23.0.1
# 查看系统版本
cat /etc/redhat-release
# 查看docker版本
docker --version
部署milvus
1. 部署milvus
官网教程
下载部署文件
wget https://github.com/milvus-io/milvus/releases/download/v2.0.2/milvus-standalone-docker-compose.yml -O docker-compose.yml
部署
sudo docker-compose up -d
成功启动效果
Creating milvus-etcd ... done
Creating milvus-minio ... done
Creating milvus-standalone ... done
可使用如下命令查看状态
sudo docker-compose ps
如果不幸没有这么顺利的小伙伴,可以参考接下来扑面而来的部署问题小节
2. 部署问题
问题一 -bash: docker-compose: command not found
缺少docker-compose , 装它。
注意:不要安装过低版本,会有意想不到的错误
在线装docker-compose
# 安装pip
yum -y install epel-release
yum -y install python-pip
# 升级pip
pip install --upgrade pip
# 安装docker-compose插件
pip install docker-compose
# 验证
docker-compose -version
安装成功显示
docker-compose version 1.26.2, build unknown
如果碰到 IOError: [Errno 2] No such file or directory: '/tmp/pip-build-w20CAl/distro/setup.py
需要升级升级pip
pip install --upgrade pip
如果升级pip碰到 def read(rel_path: str) -> str SyntaxError: invalid syntax
执行下面命令
python -m pip install --user --upgrade pip==20.2.4
/usr/bin/python -m pip install --upgrade pip
离线装docker-compose
因为后面还会讲到移植到内网环境,所以这里一并补充下离线装方案
下载
上传目标服务器,然后执行下面命令
# 移到目标位置并换名
sudo mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
# 授权
sudo chmod +x /usr/local/bin/docker-compose
# 创建软链接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 验证
docker-compose -version
搞掂
问题二 error :Failed to Setup IP tables: Unable to enable SKIP DNAT rule: (iptables failed: iptables --wait -t nat -I DOCKER -i br-5ae26e6069b6 -j RETURN: iptables: No chain/target/match by that name
需要升级下yum
yum -y update
部署attu
这是一个比较强大的可视化工具,开发测试建议安它。看得见,更放心。
官网
1. linux安装
docker run -p 8000:3000 -e HOST_URL=http://192.168.56.106:8000 -e MILVUS_URL=192.168.56.106:19530 zilliz/attu:latest
上面的命令加载的是最新版本,如果想指定版本,可以把latest换成想要的版本号,有哪些版本可用可移步官网查看,这里安装v2.0.0
# HOST_URL 运行attu的服务器ip MILVUS_URL运行milvus的ip
docker run -p 8000:3000 -e HOST_URL=http://xx.xx.xx.xx:8000 -e MILVUS_URL=xx.xx.xx.xx:19530 zilliz/attu:v2.0.0
运行成功显示
浏览器使用http://xx.xx.xx.xx:8000访问
登录进入后界面
2. 问题 docker: error pulling image configuration: download failed after attempts=6: http: server gave HTTP response to HTTPS client
这可能是因为系统时间不同步
yum install ntpdate
ntpdate 0.asia.pool.ntp.org
3. windows 安装
官网下载
下载指定版本的exe文件,直接点击运行安装即可
移植内网环境
这里是基于已经成功在一个可以连外网的linux环境成功安装了的前提下,从成功的服务器移植到目标内网服务器。因为是docker部署,镜像移植就很简单了
1. 导出镜像文件
查看镜像名称和版本
docker images
导出镜像到当前目录
# 按照同样的命令导出quay.io/coreos/etcd和minio/minio
docker save -o milvus-v2.0.0.tar.gz milvusdb/milvus:v2.0.0
docker save -o attu-v2.0.0.tar.gz zilliz/attu:v2.0.0
2. 加载镜像
把生成的milvus相关镜像文件以及attu-v2.0.0.tar.gz上传到目标服务器,然后加载镜像
# 同样命令引入etcd和minio
docker load -i milvus-v2.0.0.tar.gz
docker load -i attu-v2.0.0.tar.gz
或者
# 可以同时加载多个images
for image in $(find . -type f -name "*.tar.gz") ; do gunzip -c $image | docker load; done
3. 运行
# cd到docker-compose.yml同级目录,运行milvus
docker-compose up -d
# 运行attu
docker run -p 8000:3000 -e HOST_URL=http://192.168.56.106:8000 -e MILVUS_URL=192.168.56.106:19530 zilliz/attu:v2.0.0
4. 停止
docker stop Image ID
这里再多补充下milvus官方有提供离线部署方式,亲测可行,可以码住。
官网离线安装
行文至此,已交代完毕。最后再附上参考资料文章来源:https://www.toymoban.com/news/detail-456266.html
参考资料
https://milvus.io/docs/v2.0.x/install_standalone-docker.md
https://blog.csdn.net/qq_42823864/article/details/124587778
https://blog.csdn.net/qq_35663625/article/details/107411857
https://blog.csdn.net/sunkangke/article/details/123530119
https://www.hangge.com/blog/cache/detail_2469.html
https://github.com/zilliztech/attu/blob/main/doc/zh-cn.md文章来源地址https://www.toymoban.com/news/detail-456266.html
到了这里,关于milvus实战 | docker部署单机版的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!