Skip to content

Commit af06ae8

Browse files
authored
add Docker file for model service (#113)
1 parent 9609ec7 commit af06ae8

File tree

3 files changed

+132
-8
lines changed

3 files changed

+132
-8
lines changed

docker-files/cpp/Dockerfile

Lines changed: 40 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,16 +29,48 @@ RUN git clone https://github.com/WeBankBlockchain/WeDPR-Component.git --recursiv
2929
&& cmake .. -DBUILD_STATIC=ON && make -j8 && cat /WeDPR-Component/cpp/build/*.log
3030

3131

32-
FROM ubuntu:18.04
32+
FROM ubuntu:18.04 as wedpr-gateway-service
3333
LABEL maintainer [email protected]
3434

35-
RUN apt-get -q update && apt-get install -qy --no-install-recommends vim libkrb5-dev krb5-user pkg-config default-libmysqlclient-dev \
35+
RUN apt-get -q update && apt-get install -qy --no-install-recommends vim \
3636
&& ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
3737
&& apt-get install -qy --no-install-recommends tzdata \
3838
&& dpkg-reconfigure --frontend noninteractive tzdata \
39-
&& rm -rf /var/lib/apt/lists/*
40-
41-
COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-gateway-service /usr/local/bin/ppc-gateway-service
42-
COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-pro-node /usr/local/bin/ppc-pro-node
43-
COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-air-node /usr/local/bin/ppc-air-node
44-
COPY --from=builder /WeDPR-Component/cpp/build/bin/wedpr-mpc /usr/local/bin/wedpr-mpc
39+
&& rm -rf /var/lib/apt/lists/* \
40+
41+
RUN mkdir -p /data/home/wedpr/wedpr-gateway-service
42+
43+
COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-gateway-service /data/home/wedpr/wedpr-gateway-service/ppc-gateway-service
44+
45+
ENTRYPOINT ["/data/home/wedpr/wedpr-gateway-service/ppc-gateway-service", "-c", "config.ini"]
46+
47+
48+
FROM ubuntu:18.04 as wedpr-pro-node-service
49+
LABEL maintainer [email protected]
50+
51+
RUN apt-get -q update && apt-get install -qy --no-install-recommends vim libkrb5-dev krb5-user \
52+
&& ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
53+
&& apt-get install -qy --no-install-recommends tzdata \
54+
&& dpkg-reconfigure --frontend noninteractive tzdata \
55+
&& rm -rf /var/lib/apt/lists/* \
56+
57+
RUN mkdir -p /data/home/wedpr/wedpr-pro-node-service
58+
59+
COPY --from=builder /WeDPR-Component/cpp/build/bin/ppc-pro-node /data/home/wedpr/wedpr-pro-node-service/ppc-pro-node
60+
61+
ENTRYPOINT ["/data/home/wedpr/wedpr-pro-node-service/ppc-pro-node", "-c", "config.ini"]
62+
63+
FROM ubuntu:18.04 as wedpr-mpc-service
64+
LABEL maintainer [email protected]
65+
66+
RUN apt-get -q update && apt-get install -qy --no-install-recommends vim libkrb5-dev krb5-user \
67+
&& ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
68+
&& apt-get install -qy --no-install-recommends tzdata \
69+
&& dpkg-reconfigure --frontend noninteractive tzdata \
70+
&& rm -rf /var/lib/apt/lists/* \
71+
72+
RUN mkdir -p /data/home/wedpr/wedpr-mpc-service
73+
74+
COPY --from=builder /WeDPR-Component/cpp/build/bin/wedpr-mpc /data/home/wedpr/wedpr-mpc-service/wedpr-mpc
75+
76+
ENTRYPOINT ["/data/home/wedpr/wedpr-mpc-service/wedpr-mpc", "-c", "config.ini"]

docker-files/model/Dockerfile

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
FROM wedpr-image:latest as wedpr-model-service
2+
3+
LABEL maintainer [email protected]
4+
5+
ENV LANG zh_CN.UTF-8
6+
ENV LANGUAGE zh_CN.UTF-8
7+
ENV LC_ALL zh_CN.UTF-8
8+
9+
WORKDIR /data/home/wedpr
10+
ARG SOURCE_BRANCH
11+
ENV DEBIAN_FRONTEND=noninteractive \
12+
SOURCE=${SOURCE_BRANCH:-master}
13+
14+
RUN mkdir -p /data/home/wedpr
15+
# copy requirements
16+
COPY depends/requirements.txt /data/home/wedpr/requirements.txt
17+
18+
# install the requirements
19+
RUN pip install --no-cache-dir -i https://pypi.mirrors.ustc.edu.cn/simple/ -r /data/home/wedpr/requirements.txt
20+
21+
# obtain the source
22+
RUN git clone https://github.com/WeBankBlockchain/WeDPR-Component.git --recursive --depth=1 -b ${SOURCE}
23+
# move the files to the /data/app path
24+
RUN mkdir -p /data/home/wedpr/wedpr-model/ \
25+
&& mv /data/home/wedpr/WeDPR-Component/python/ppc_common /data/home/wedpr/wedpr-model/ppc-common \
26+
&& mv /data/home/wedpr/WeDPR-Component/python/ppc_model /data/home/wedpr/wedpr-model/ppc-model \
27+
&& mv /data/home/wedpr/WeDPR-Component/python/aes_key.bin /data/home/wedpr/wedpr-model/ppc-model \
28+
&& cp /data/home/wedpr/model/ppc-model/tools/*.sh /data/home/wedpr/wedpr-model/ppc-model
29+
30+
# clear the WeDPR-Component
31+
RUN rm -rf /data/home/wedpr/WeDPR-Component
32+
33+
ENTRYPOINT ["/bin/bash", "/data/home/wedpr/wedpr-model/start.sh", "true"]
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
cx-Oracle==8.3.0
2+
click>=8.0
3+
pytest
4+
cheroot==8.5.2
5+
flask_restx==1.3.0
6+
configobj~=5.0.6
7+
Flask_SQLAlchemy==3.1.0
8+
cryptography~=41.0.5
9+
pandas
10+
hypothesis~=5.48.0
11+
parsimonious~=0.8.1
12+
SQLAlchemy==2.0.16
13+
argcomplete~=1.12.2
14+
cytoolz~=0.10.1
15+
six~=1.15.0
16+
attrdict~=2.0.1
17+
Flask~=2.2.5
18+
pymitter~=0.3.0
19+
requests~=2.31.0
20+
requests_toolbelt==0.9.1
21+
lru_dict==1.1.6
22+
promise~=2.3
23+
#protobuf==3.19.0
24+
# protobuf>=4.21.6,<5.0dev
25+
protobuf>=5.27.1
26+
pycryptodome==3.9.9
27+
pyjwt
28+
pyyaml
29+
mysqlclient==2.1.0
30+
waitress==3.0.0
31+
sqlparse~=0.4.1
32+
toolz~=0.11.1
33+
tenacity==7.0.0
34+
coincurve~=13.0.0
35+
google~=3.0.0
36+
paste~=3.5.0
37+
func_timeout==4.3.0
38+
cheroot==8.5.2
39+
gmssl~=3.2.1
40+
readerwriterlock~=1.0.4
41+
jsoncomment~=0.2.3
42+
matplotlib~=3.2.2
43+
seaborn~=0.10.1
44+
sqlvalidator==0.0.17
45+
requests-toolbelt==0.9.1
46+
hdfs
47+
scikit-learn~=0.24.2
48+
gmpy2
49+
networkx
50+
pydot
51+
snowland-smx
52+
numpy==1.23.1
53+
graphviz
54+
xlrd~=1.0.0
55+
MarkupSafe>=2.1.1
56+
urllib3==1.26.18
57+
phe
58+
chardet
59+
requests_kerberos>=0.15.0

0 commit comments

Comments
 (0)