未验证 提交 97b32059 编写于 作者: F fuxingbit 提交者: GitHub

update dockerfile and add platform_machine to requirements.txt (#562)

* update dockerfile and add platform_machine to requirements.txt
上级 ae70a96e
# Call this Dockerfile via the build_local.sh script # Call this Dockerfile via the build_local.sh script
FROM ubuntu:20.04 FROM primihub/primihub-base
ENV LANG c.UTF-8
ENV DEBIAN_FRONTEND=noninteractive
ENV PYTHONUNBUFFERED=1
RUN apt-get update \
&& apt-get install -y python3 python3-dev libgmp-dev python3-pip libzmq5 tzdata libmysqlclient-dev \
&& ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& rm -rf /var/lib/apt/lists/*
# Change WorkDir to /app
WORKDIR /app WORKDIR /app
ADD bazel-bin.tar.gz ./ ADD bazel-bin.tar.gz ./
...@@ -20,14 +10,7 @@ RUN mkdir log \ ...@@ -20,14 +10,7 @@ RUN mkdir log \
&& ln -s bazel-bin/node primihub-node \ && ln -s bazel-bin/node primihub-node \
&& ln -s bazel-bin/cli primihub-cli && ln -s bazel-bin/cli primihub-cli
WORKDIR /app/python RUN cd python \
RUN python3 -m pip install --upgrade pip \ && python3 setup.py develop
&& python3 -m pip install -r requirements.txt -i https://pypi.douban.com/simple/ \
&& python3 setup.py develop \
&& rm -rf /root/.cache/pip/
WORKDIR /app
# ENV PYTHONPATH=/usr/lib/python3.9/site-packages/:$TARGET_PATH
# gRPC server port
EXPOSE 50050 EXPOSE 50050
...@@ -4,7 +4,7 @@ ENV DEBIAN_FRONTEND=noninteractive ...@@ -4,7 +4,7 @@ ENV DEBIAN_FRONTEND=noninteractive
# Install python3 and GCC openmp (Depends with cryptFlow2 library) # Install python3 and GCC openmp (Depends with cryptFlow2 library)
RUN apt-get update \ RUN apt-get update \
&& apt-get install -y python3 python3-dev libgmp-dev python3-pip tzdata libmysqlclient-dev \ && apt-get install -y python3 python3-dev libgmp-dev python3-pip tzdata wget libmysqlclient-dev \
&& ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ && ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
...@@ -13,8 +13,7 @@ WORKDIR /app ...@@ -13,8 +13,7 @@ WORKDIR /app
COPY primihub-linux-amd64.tar.gz primihub-linux-arm64.tar.gz /opt/ COPY primihub-linux-amd64.tar.gz primihub-linux-arm64.tar.gz /opt/
COPY src/primihub/protos/ src/primihub/protos/ COPY src/primihub/protos/ src/primihub/protos/
RUN ARCH=`arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/` \ RUN tar zxf /opt/primihub-linux-$(dpkg --print-architecture).tar.gz \
&& tar zxf /opt/primihub-linux-${ARCH}.tar.gz \
&& mkdir log \ && mkdir log \
&& ln -s bazel-bin/node primihub-node \ && ln -s bazel-bin/node primihub-node \
&& ln -s bazel-bin/cli primihub-cli && ln -s bazel-bin/cli primihub-cli
...@@ -23,6 +22,10 @@ WORKDIR /app/python ...@@ -23,6 +22,10 @@ WORKDIR /app/python
RUN python3 -m pip install --upgrade pip \ RUN python3 -m pip install --upgrade pip \
&& python3 -m pip install -r requirements.txt \ && python3 -m pip install -r requirements.txt \
&& if [ "$(dpkg --print-architecture)" = "arm64" ]; then \
wget https://primihub.oss-cn-beijing.aliyuncs.com/dev/tenseal-0.3.14-cp38-cp38-linux_aarch64.whl \
&& pip install tenseal-0.3.14-cp38-cp38-linux_aarch64.whl; \
fi \
&& python3 setup.py install \ && python3 setup.py install \
&& rm -rf /root/.cache/pip/ && rm -rf /root/.cache/pip/
......
# --extra-index-url https://download.pytorch.org/whl/cpu --extra-index-url https://download.pytorch.org/whl/cpu
pyarrow==6.0.1 pyarrow==6.0.1
pandas pandas
...@@ -14,6 +14,7 @@ protobuf==3.20.0 ...@@ -14,6 +14,7 @@ protobuf==3.20.0
sphinx sphinx
scikit-learn==1.2.2 scikit-learn==1.2.2
phe==1.5.0 phe==1.5.0
tenseal==0.3.14; platform_machine != "arm64" and platform_machine != "aarch64"
mysql-connector-python mysql-connector-python
sqlalchemy==2.0.16 sqlalchemy==2.0.16
...@@ -28,7 +29,7 @@ scipy~=1.7.1 ...@@ -28,7 +29,7 @@ scipy~=1.7.1
modin modin
opacus==1.4.0 opacus==1.4.0
torch==1.13.1 torch==1.13.1+cpu; platform_machine != "arm64" and platform_machine != "aarch64"
torchvision==0.14.1 torchvision==0.14.1+cpu; platform_machine != "arm64" and platform_machine != "aarch64"
# torch==1.13.1+cpu torch==1.13.1; platform_machine == "arm64" or platform_machine == "aarch64"
# torchvision==0.14.1+cpu torchvision==0.14.1; platform_machine == "arm64" or platform_machine == "aarch64"
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册