mirror of
https://gitee.com/milvus-io/milvus.git
synced 2024-12-03 20:39:36 +08:00
Merge pull request #601 from jielinxu/0.6.0
[skip ci] Add compilation in docker
This commit is contained in:
commit
59526bdc82
106
install.md
106
install.md
@ -1,6 +1,13 @@
|
|||||||
# Install Milvus from Source Code
|
# Install Milvus from Source Code
|
||||||
|
|
||||||
## Software requirements
|
- [Build from source](#build-from-source)
|
||||||
|
- [Compile Milvus on Docker](#compile-milvus-on-docker)
|
||||||
|
|
||||||
|
If you encounter any problems/issues compiling Milvus from source, please refer to [Troubleshooting](#troubleshooting).
|
||||||
|
|
||||||
|
## Build from source
|
||||||
|
|
||||||
|
### Requirements
|
||||||
|
|
||||||
- Ubuntu 18.04 or higher
|
- Ubuntu 18.04 or higher
|
||||||
|
|
||||||
@ -8,21 +15,21 @@
|
|||||||
|
|
||||||
- CMake 3.12 or higher
|
- CMake 3.12 or higher
|
||||||
|
|
||||||
##### For GPU version, you will also need:
|
##### For GPU-enabled version, you will also need:
|
||||||
|
|
||||||
- CUDA 10.0 or higher
|
- CUDA 10.0 or higher
|
||||||
- NVIDIA driver 418 or higher
|
- NVIDIA driver 418 or higher
|
||||||
|
|
||||||
## Compilation
|
### Compilation
|
||||||
|
|
||||||
### Step 1 Install dependencies
|
#### Step 1 Install dependencies
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ cd [Milvus root path]/core
|
$ cd [Milvus root path]/core
|
||||||
$ ./ubuntu_build_deps.sh
|
$ ./ubuntu_build_deps.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
### Step 2 Build
|
#### Step 2 Build
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ cd [Milvus root path]/core
|
$ cd [Milvus root path]/core
|
||||||
@ -31,7 +38,7 @@ or
|
|||||||
$ ./build.sh -t Release
|
$ ./build.sh -t Release
|
||||||
```
|
```
|
||||||
|
|
||||||
By default, it will build CPU version. To build GPU version, add `-g` option
|
By default, it will build CPU-only version. To build GPU version, add `-g` option
|
||||||
```shell
|
```shell
|
||||||
$ ./build.sh -g
|
$ ./build.sh -g
|
||||||
```
|
```
|
||||||
@ -43,7 +50,7 @@ $./build.sh -h
|
|||||||
|
|
||||||
When the build is completed, all the stuff that you need in order to run Milvus will be installed under `[Milvus root path]/core/milvus`.
|
When the build is completed, all the stuff that you need in order to run Milvus will be installed under `[Milvus root path]/core/milvus`.
|
||||||
|
|
||||||
## Launch Milvus server
|
### Launch Milvus server
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
$ cd [Milvus root path]/core/milvus
|
$ cd [Milvus root path]/core/milvus
|
||||||
@ -68,14 +75,87 @@ To stop Milvus server, run:
|
|||||||
$ ./stop_server.sh
|
$ ./stop_server.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Compile Milvus on Docker
|
||||||
|
|
||||||
|
With this dockerfile, you should be able to compile Milvus on any Linux platform that run Docker. To build a GPU supported Milvus, you neeed to install [NVIDIA Docker](https://github.com/NVIDIA/nvidia-docker/) first.
|
||||||
|
|
||||||
|
### Step 1 Pull Milvus Docker images
|
||||||
|
|
||||||
|
Pull CPU-only image:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ docker pull milvusdb/milvus-cpu-build-env:v0.6.0-ubuntu18.04
|
||||||
|
```
|
||||||
|
|
||||||
|
Pull GPU-enabled image:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ docker pull milvusdb/milvus-gpu-build-env:v0.6.0-ubuntu18.04
|
||||||
|
```
|
||||||
|
### Step 2 Start the Docker container
|
||||||
|
|
||||||
|
Start a CPU-only container:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ docker run -it -p 19530:19530 -d milvusdb/milvus-cpu-build-env:v0.6.0-ubuntu18.04
|
||||||
|
```
|
||||||
|
|
||||||
|
Start a GPU container:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ docker run — runtime=nvidia -it -p 19530:19530 -d milvusdb/milvus-gpu-build-env:v0.6.0-ubuntu18.04
|
||||||
|
```
|
||||||
|
To enter the container:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ docker exec -it [container_id] bash
|
||||||
|
```
|
||||||
|
### Step 3 Download Milvus source code
|
||||||
|
|
||||||
|
Download Milvus source code:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ cd /home
|
||||||
|
$ wget https://github.com/milvus-io/milvus/archive/0.6.0.tar.gz
|
||||||
|
```
|
||||||
|
|
||||||
|
Extract the source package:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ tar xvf ./v0.6.0.tar.gz
|
||||||
|
```
|
||||||
|
|
||||||
|
The source code is extracted into a folder called `milvus-0.6.0`. To enter its core directory:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ cd ./milvus-0.6.0/core
|
||||||
|
```
|
||||||
|
### Step 4 Compile Milvus in the container
|
||||||
|
|
||||||
|
If you are using a CPU-only image, compile it like this:
|
||||||
|
```shell
|
||||||
|
$ ./build.sh -t Release
|
||||||
|
```
|
||||||
|
|
||||||
|
If you are using a GPU-enabled image, you need to add a `-g` parameter:
|
||||||
|
```shell
|
||||||
|
$ ./build.sh -g -t Release
|
||||||
|
```
|
||||||
|
|
||||||
|
Then start Milvus server:
|
||||||
|
```shell
|
||||||
|
$ ./start_server.sh
|
||||||
|
```
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
1. If you encounter the following error when compiling:
|
1. If you encounter the following error when compiling:
|
||||||
`protocol https not supported or disabled in libcurl`.
|
`protocol https not supported or disabled in libcurl`.
|
||||||
First, make sure you have `libcurl4-openssl-dev` installed in your system.
|
First, make sure you have `libcurl4-openssl-dev` installed in your system.
|
||||||
Then try reinstall CMake from source with `--system-curl` option:
|
Then try reinstalling the latest CMake from source with `--system-curl` option:
|
||||||
```shell
|
|
||||||
$ ./bootstrap --system-curl
|
|
||||||
$ make
|
|
||||||
$ sudo make install
|
|
||||||
```
|
|
||||||
|
|
||||||
|
```shell
|
||||||
|
$ ./bootstrap --system-curl
|
||||||
|
$ make
|
||||||
|
$ sudo make install
|
||||||
|
```
|
||||||
|
If the `--system-curl` command doesn't work, you can also reinstall CMake in **Ubuntu Software** on your local computer.
|
||||||
|
Loading…
Reference in New Issue
Block a user