diff --git a/docker-files/cpp/Dockerfile b/docker-files/cpp/Dockerfile index 6be13fc1..d14397eb 100644 --- a/docker-files/cpp/Dockerfile +++ b/docker-files/cpp/Dockerfile @@ -29,16 +29,48 @@ RUN git clone https://github.com/WeBankBlockchain/WeDPR-Component.git --recursiv && cmake .. -DBUILD_STATIC=ON && make -j8 && cat /WeDPR-Component/cpp/build/*.log -FROM ubuntu:18.04 +FROM ubuntu:18.04 as wedpr-gateway-service LABEL maintainer service@webank.com -RUN apt-get -q update && apt-get install -qy --no-install-recommends vim libkrb5-dev krb5-user pkg-config default-libmysqlclient-dev \ +RUN apt-get -q update && apt-get install -qy --no-install-recommends vim \ && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ && apt-get install -qy --no-install-recommends tzdata \ && dpkg-reconfigure --frontend noninteractive tzdata \ - && rm -rf /var/lib/apt/lists/* - -COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-gateway-service /usr/local/bin/ppc-gateway-service -COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-pro-node /usr/local/bin/ppc-pro-node -COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-air-node /usr/local/bin/ppc-air-node -COPY --from=builder /WeDPR-Component/cpp/build/bin/wedpr-mpc /usr/local/bin/wedpr-mpc \ No newline at end of file + && rm -rf /var/lib/apt/lists/* \ + +RUN mkdir -p /data/home/wedpr/wedpr-gateway-service + +COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-gateway-service /data/home/wedpr/wedpr-gateway-service/ppc-gateway-service + +ENTRYPOINT ["/data/home/wedpr/wedpr-gateway-service/ppc-gateway-service", "-c", "config.ini"] + + +FROM ubuntu:18.04 as wedpr-pro-node-service +LABEL maintainer service@webank.com + +RUN apt-get -q update && apt-get install -qy --no-install-recommends vim libkrb5-dev krb5-user \ + && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ + && apt-get install -qy --no-install-recommends tzdata \ + && dpkg-reconfigure --frontend noninteractive tzdata \ + && rm -rf /var/lib/apt/lists/* \ + +RUN mkdir -p /data/home/wedpr/wedpr-pro-node-service + +COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-pro-node /data/home/wedpr/wedpr-pro-node-service/ppc-pro-node + +ENTRYPOINT ["/data/home/wedpr/wedpr-pro-node-service/ppc-pro-node", "-c", "config.ini"] + +FROM ubuntu:18.04 as wedpr-mpc-service +LABEL maintainer service@webank.com + +RUN apt-get -q update && apt-get install -qy --no-install-recommends vim libkrb5-dev krb5-user \ + && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ + && apt-get install -qy --no-install-recommends tzdata \ + && dpkg-reconfigure --frontend noninteractive tzdata \ + && rm -rf /var/lib/apt/lists/* \ + +RUN mkdir -p /data/home/wedpr/wedpr-mpc-service + +COPY --from=builder /WeDPR-Component/cpp/build/bin/wedpr-mpc /data/home/wedpr/wedpr-mpc-service/wedpr-mpc + +ENTRYPOINT ["/data/home/wedpr/wedpr-mpc-service/wedpr-mpc", "-c", "config.ini"] diff --git a/docker-files/model/Dockerfile b/docker-files/model/Dockerfile new file mode 100644 index 00000000..7c57b93b --- /dev/null +++ b/docker-files/model/Dockerfile @@ -0,0 +1,33 @@ +FROM wedpr-image:latest as wedpr-model-service + +LABEL maintainer service@webank.com + +ENV LANG zh_CN.UTF-8 +ENV LANGUAGE zh_CN.UTF-8 +ENV LC_ALL zh_CN.UTF-8 + +WORKDIR /data/home/wedpr +ARG SOURCE_BRANCH +ENV DEBIAN_FRONTEND=noninteractive \ + SOURCE=${SOURCE_BRANCH:-master} + +RUN mkdir -p /data/home/wedpr +# copy requirements +COPY depends/requirements.txt /data/home/wedpr/requirements.txt + +# install the requirements +RUN pip install --no-cache-dir -i https://pypi.mirrors.ustc.edu.cn/simple/ -r /data/home/wedpr/requirements.txt + +# obtain the source +RUN git clone https://github.com/WeBankBlockchain/WeDPR-Component.git --recursive --depth=1 -b ${SOURCE} +# move the files to the /data/app path +RUN mkdir -p /data/home/wedpr/wedpr-model/ \ + && mv /data/home/wedpr/WeDPR-Component/python/ppc_common /data/home/wedpr/wedpr-model/ppc-common \ + && mv /data/home/wedpr/WeDPR-Component/python/ppc_model /data/home/wedpr/wedpr-model/ppc-model \ + && mv /data/home/wedpr/WeDPR-Component/python/aes_key.bin /data/home/wedpr/wedpr-model/ppc-model \ + && cp /data/home/wedpr/model/ppc-model/tools/*.sh /data/home/wedpr/wedpr-model/ppc-model + +# clear the WeDPR-Component +RUN rm -rf /data/home/wedpr/WeDPR-Component + +ENTRYPOINT ["/bin/bash", "/data/home/wedpr/wedpr-model/start.sh", "true"] diff --git a/docker-files/model/depends/requirements.txt b/docker-files/model/depends/requirements.txt new file mode 100644 index 00000000..7b753c1b --- /dev/null +++ b/docker-files/model/depends/requirements.txt @@ -0,0 +1,59 @@ +cx-Oracle==8.3.0 +click>=8.0 +pytest +cheroot==8.5.2 +flask_restx==1.3.0 +configobj~=5.0.6 +Flask_SQLAlchemy==3.1.0 +cryptography~=41.0.5 +pandas +hypothesis~=5.48.0 +parsimonious~=0.8.1 +SQLAlchemy==2.0.16 +argcomplete~=1.12.2 +cytoolz~=0.10.1 +six~=1.15.0 +attrdict~=2.0.1 +Flask~=2.2.5 +pymitter~=0.3.0 +requests~=2.31.0 +requests_toolbelt==0.9.1 +lru_dict==1.1.6 +promise~=2.3 +#protobuf==3.19.0 +# protobuf>=4.21.6,<5.0dev +protobuf>=5.27.1 +pycryptodome==3.9.9 +pyjwt +pyyaml +mysqlclient==2.1.0 +waitress==3.0.0 +sqlparse~=0.4.1 +toolz~=0.11.1 +tenacity==7.0.0 +coincurve~=13.0.0 +google~=3.0.0 +paste~=3.5.0 +func_timeout==4.3.0 +cheroot==8.5.2 +gmssl~=3.2.1 +readerwriterlock~=1.0.4 +jsoncomment~=0.2.3 +matplotlib~=3.2.2 +seaborn~=0.10.1 +sqlvalidator==0.0.17 +requests-toolbelt==0.9.1 +hdfs +scikit-learn~=0.24.2 +gmpy2 +networkx +pydot +snowland-smx +numpy==1.23.1 +graphviz +xlrd~=1.0.0 +MarkupSafe>=2.1.1 +urllib3==1.26.18 +phe +chardet +requests_kerberos>=0.15.0