README.md 1.7 KB
Newer Older
1
# Compile and install milvus-distributed
2 3 4 5 6 7

## Environment

```
    OS: Ubuntu 18.04
    go:1.15
Z
ZhiShen 已提交
8
    cmake: >=3.18
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
    gcc: 7.5
```

### Install dependencies

```shell script
    sudo apt install -y g++ gcc make libssl-dev zlib1g-dev libboost-regex-dev \
    libboost-program-options-dev libboost-system-dev libboost-filesystem-dev \
    libboost-serialization-dev python3-dev libboost-python-dev libcurl4-openssl-dev gfortran libtbb-dev

    export GO111MODULE=on
    go get github.com/golang/protobuf/protoc-gen-go@v1.3.2
```

#### Install OpenBlas library

```shell script
    wget https://github.com/xianyi/OpenBLAS/archive/v0.3.9.tar.gz && \
    tar zxvf v0.3.9.tar.gz && cd OpenBLAS-0.3.9 && \
    make TARGET=CORE2 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1 USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="-O3 -g -fPIC" FCOMMON_OPT="-O3 -g -fPIC -frecursive" NMAX="NUM_THREADS=128" LIBPREFIX="libopenblas" LAPACKE="NO_LAPACKE=1" INTERFACE64=0 NO_STATIC=1 && \
    make PREFIX=/usr install
```

### Compile

#### Generate the go files from proto file

```shell script
37
    make check-proto-product
38 39 40 41 42 43 44 45 46 47 48 49 50 51
```

#### Check code specifications

```shell script
    make verifiers
```

#### Compile

```shell script
    make all
```

52 53 54 55 56 57 58 59 60 61
#### Install docker-compose

refer: https://docs.docker.com/compose/install/
```shell script
    sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /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
```

62 63 64 65 66 67 68 69 70 71 72 73
#### Start service

```shell script
    cd deployments
    docker-compose up -d
```

#### Run unittest

```shell script
    make unittest
```