Correct docker file

Signed-off-by: zhenshan.cao <zhenshan.cao@zilliz.com>
pull/4973/head^2
zhenshan.cao 2021-02-20 10:15:37 +08:00 committed by yefu.chen
parent f62078c027
commit b3891ca199
10 changed files with 62 additions and 48 deletions

View File

@ -13,6 +13,10 @@ dir ('build/docker/deploy') {
withCredentials([usernamePassword(credentialsId: "${env.DOCKER_CREDENTIALS_ID}", usernameVariable: 'DOCKER_USERNAME', passwordVariable: 'DOCKER_PASSWORD')]) {
sh 'docker login -u ${DOCKER_USERNAME} -p ${DOCKER_PASSWORD} ${DOKCER_REGISTRY_URL}'
sh 'docker pull ${SOURCE_REPO}/master:${SOURCE_TAG} || true'
sh 'docker-compose build --force-rm master'
sh 'docker-compose push master'
sh 'docker pull ${SOURCE_REPO}/proxyservice:${SOURCE_TAG} || true'
sh 'docker-compose build --force-rm proxyservice'
sh 'docker-compose push proxyservice'

View File

@ -5,6 +5,7 @@ try {
sh 'docker-compose -p ${DOCKER_COMPOSE_PROJECT_NAME} up -d minio'
dir ('build/docker/deploy') {
sh 'docker-compose -p ${DOCKER_COMPOSE_PROJECT_NAME} pull'
sh 'docker-compose -p ${DOCKER_COMPOSE_PROJECT_NAME} up -d master'
sh 'docker-compose -p ${DOCKER_COMPOSE_PROJECT_NAME} up -d proxyservice'
sh 'docker-compose -p ${DOCKER_COMPOSE_PROJECT_NAME} up -d proxynode'
sh 'docker-compose -p ${DOCKER_COMPOSE_PROJECT_NAME} up -d indexservice'

View File

@ -78,8 +78,13 @@ endif
verifiers: getdeps cppcheck fmt static-check ruleguard
# Builds various components locally.
master: build-cpp
@echo "Building each component's binary to './bin'"
@echo "Building masterservice ..."
@mkdir -p $(INSTALL_PATH) && go env -w CGO_ENABLED="1" && GO111MODULE=on $(GO) build -o $(INSTALL_PATH)/masterservice $(PWD)/cmd/masterservice/main.go 1>/dev/null
proxynode: build-cpp
@echo "Building each component's binary to './bin'"
@echo "Building proxy node ..."
@ -165,12 +170,11 @@ test-cpp: build-cpp-with-unittest
#TODO: build each component to docker
docker: verifiers
@echo "Building query node docker image '$(TAG)'"
@echo "Building proxy docker image '$(TAG)'"
# Builds each component and installs it to $GOPATH/bin.
install: all
@echo "Installing binary to './bin'"
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/masterservice $(GOPATH)/bin/masterservice
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/queryservice $(GOPATH)/bin/queryservice
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/querynode $(GOPATH)/bin/querynode
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/proxynode $(GOPATH)/bin/proxynode
@ -178,6 +182,8 @@ install: all
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/singlenode $(GOPATH)/bin/singlenode
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/indexservice $(GOPATH)/bin/indexservice
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/indexnode $(GOPATH)/bin/indexnode
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/dataservice $(GOPATH)/bin/dataservice
@mkdir -p $(GOPATH)/bin && cp -f $(PWD)/bin/datanode $(GOPATH)/bin/datanode
@mkdir -p $(LIBRARY_PATH) && cp -f $(PWD)/internal/core/output/lib/* $(LIBRARY_PATH)
@echo "Installation successful."
@ -187,6 +193,7 @@ clean:
@find . -name '*~' | xargs rm -fv
@rm -rf bin/
@rm -rf lib/
@rm -rf $(GOPATH)/bin/masterservice
@rm -rf $(GOPATH)/bin/proxynode
@rm -rf $(GOPATH)/bin/proxyservice
@rm -rf $(GOPATH)/bin/queryservice
@ -194,3 +201,5 @@ clean:
@rm -rf $(GOPATH)/bin/singlenode
@rm -rf $(GOPATH)/bin/indexservice
@rm -rf $(GOPATH)/bin/indexnode
@rm -rf $(GOPATH)/bin/dataservice
@rm -rf $(GOPATH)/bin/datanode

View File

@ -10,3 +10,4 @@ PROXY_NODE_HOST=proxynode
PROXY_SERVICE_ADDRESS=proxyservice:19530
INDEX_SERVICE_ADDRESS=indexservice:31000
DATA_SERVICE_ADDRESS=dataservice:13333
QUERY_SERVICE_ADDRESS=queryservice:19531

View File

@ -1,6 +1,23 @@
version: '3.5'
services:
master:
image: ${TARGET_REPO}/master:${TARGET_TAG}
build:
context: ../../../
dockerfile: build/docker/deploy/masterservice/Dockerfile
cache_from:
- ${SOURCE_REPO}/master:${SOURCE_TAG}
environment:
PULSAR_ADDRESS: ${PULSAR_ADDRESS}
ETCD_ADDRESS: ${ETCD_ADDRESS}
INDEX_SERVICE_ADDRESS: ${INDEX_SERVICE_ADDRESS}
DATA_SERVICE_ADDRESS: ${DATA_SERVICE_ADDRESS}
QUERY_SERVICE_ADDRESS: ${QUERY_SERVICE_ADDRESS}
PROXY_SERVICE_ADDRESS: ${PROXY_SERVICE_ADDRESS}
networks:
- milvus
proxyservice:
image: ${TARGET_REPO}/proxyservice:${TARGET_TAG}
build:
@ -8,6 +25,8 @@ services:
dockerfile: build/docker/deploy/proxyservice/Dockerfile
cache_from:
- ${SOURCE_REPO}/proxyservice:${SOURCE_TAG}
environment:
PULSAR_ADDRESS: ${PULSAR_ADDRESS}
networks:
- milvus
@ -19,10 +38,15 @@ services:
cache_from:
- ${SOURCE_REPO}/proxynode:${SOURCE_TAG}
environment:
ETCD_ADDRESS: ${ETCD_ADDRESS}
PULSAR_ADDRESS: ${PULSAR_ADDRESS}
MASTER_ADDRESS: ${MASTER_ADDRESS}
PROXY_NODE_HOST: ${PROXY_NODE_HOST}
PROXY_SERVICE_ADDRESS: ${PROXY_SERVICE_ADDRESS}
INDEX_SERVICE_ADDRESS: ${INDEX_SERVICE_ADDRESS}
DATA_SERVICE_ADDRESS: ${DATA_SERVICE_ADDRESS}
QUERY_SERVICE_ADDRESS: ${QUERY_SERVICE_ADDRESS}
networks:
- milvus
@ -34,10 +58,8 @@ services:
cache_from:
- ${SOURCE_REPO}/queryservice:${SOURCE_TAG}
environment:
PULSAR_ADDRESS: ${PULSAR_ADDRESS}
ETCD_ADDRESS: ${ETCD_ADDRESS}
MASTER_ADDRESS: ${MASTER_ADDRESS}
MINIO_ADDRESS: ${MINIO_ADDRESS}
DATA_SERVICE_ADDRESS: ${DATA_SERVICE_ADDRESS}
networks:
- milvus
@ -50,9 +72,10 @@ services:
- ${SOURCE_REPO}/querynode:${SOURCE_TAG}
environment:
PULSAR_ADDRESS: ${PULSAR_ADDRESS}
ETCD_ADDRESS: ${ETCD_ADDRESS}
MASTER_ADDRESS: ${MASTER_ADDRESS}
MINIO_ADDRESS: ${MINIO_ADDRESS}
DATA_SERVICE_ADDRESS: ${DATA_SERVICE_ADDRESS}
INDEX_SERVICE_ADDRESS: ${INDEX_SERVICE_ADDRESS}
networks:
- milvus
@ -68,6 +91,7 @@ services:
ETCD_ADDRESS: ${ETCD_ADDRESS}
MASTER_ADDRESS: ${MASTER_ADDRESS}
MINIO_ADDRESS: ${MINIO_ADDRESS}
DATA_SERVICE_ADDRESS: ${DATA_SERVICE_ADDRESS}
networks:
- milvus

View File

@ -1,41 +0,0 @@
# Copyright (C) 2019-2020 Zilliz. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software distributed under the License
# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
# or implied. See the License for the specific language governing permissions and limitations under the License.
FROM milvusdb/milvus-distributed-dev:amd64-ubuntu18.04-latest AS openblas
#FROM alpine
FROM ubuntu:bionic-20200921
RUN apt-get update && apt-get install -y --no-install-recommends libtbb-dev gfortran
#RUN echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories
#RUN sed -i "s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g" /etc/apk/repositories \
# && apk add --no-cache libtbb gfortran
COPY --from=openblas /usr/lib/libopenblas-r0.3.9.so /usr/lib/
RUN ln -s /usr/lib/libopenblas-r0.3.9.so /usr/lib/libopenblas.so.0 && \
ln -s /usr/lib/libopenblas.so.0 /usr/lib/libopenblas.so
COPY ./bin/indexbuilder /milvus-distributed/bin/indexbuilder
COPY ./configs/ /milvus-distributed/configs/
COPY ./lib/ /milvus-distributed/lib/
ENV LD_LIBRARY_PATH=/milvus-distributed/lib:$LD_LIBRARY_PATH:/usr/lib
WORKDIR /milvus-distributed/
CMD ["./bin/indexbuilder"]
EXPOSE 31000

View File

@ -13,6 +13,10 @@ FROM alpine:3.12.1
COPY ./bin/proxynode /milvus-distributed/bin/proxynode
COPY ./lib/ /milvus-distributed/lib/
ENV LD_LIBRARY_PATH=/milvus-distributed/lib:$LD_LIBRARY_PATH:/usr/lib
COPY ./configs/ /milvus-distributed/configs/
WORKDIR /milvus-distributed/

View File

@ -13,6 +13,10 @@ FROM alpine:3.12.1
COPY ./bin/proxyservice /milvus-distributed/bin/proxyservice
COPY ./lib/ /milvus-distributed/lib/
ENV LD_LIBRARY_PATH=/milvus-distributed/lib:$LD_LIBRARY_PATH:/usr/lib
COPY ./configs/ /milvus-distributed/configs/
WORKDIR /milvus-distributed/

View File

@ -49,6 +49,11 @@ func (pt *ParamTable) LoadFromEnv() {
pt.MasterAddress = masterAddress
}
proxyServiceAddress := os.Getenv("PROXY_SERVICE_ADDRESS")
if proxyServiceAddress != "" {
pt.ProxyServiceAddress = proxyServiceAddress
}
indexServiceAddress := os.Getenv("INDEX_SERVICE_ADDRESS")
if indexServiceAddress != "" {
pt.IndexServerAddress = indexServiceAddress

View File

@ -113,6 +113,9 @@ func (s *Server) init() error {
Params.IP = host
}
Params.LoadFromEnv()
Params.LoadFromArgs()
Params.Port = funcutil.GetAvailablePort()
Params.Address = Params.IP + ":" + strconv.FormatInt(int64(Params.Port), 10)