代码拉取完成,页面将自动刷新
# Arguments
ARG TARGETPLATFORM
ARG PY_VERSION=3.8
ARG CANN_CHIP=910b
ARG VERSION=8.0.RC1
ARG BASE=openeuler/openeuler:22.03-lts-sp4
# Phase 1: Install Python
FROM ${BASE} as py-installer
# Arguments
ARG PY_VERSION
# Environment variables
ENV PATH=/usr/local/python${PY_VERSION}/bin:${PATH}
# Install dependencies
RUN yum update -y && \
yum install -y \
gcc \
gcc-c++ \
make \
cmake \
curl \
zlib-devel \
bzip2-devel \
openssl-devel \
ncurses-devel \
sqlite-devel \
readline-devel \
tk-devel \
gdbm-devel \
libpcap-devel \
xz-devel \
libev-devel \
expat-devel \
libffi-devel \
systemtap-sdt-devel \
&& yum clean all \
&& rm -rf /var/cache/yum \
&& rm -rf /tmp/*
# Copy files
COPY scripts/python.sh /tmp/python.sh
# Download Python
RUN bash /tmp/python.sh --download
# Install Python
RUN bash /tmp/python.sh --install && \
rm /tmp/python.sh
# Phase 2: Install CANN
FROM py-installer as cann-installer
# Arguments
ARG TARGETPLATFORM
ARG CANN_CHIP
ARG VERSION
# Install dependencies
RUN yum update -y && \
yum install -y \
gcc \
gcc-c++ \
make \
cmake \
unzip \
zlib-devel \
libffi-devel \
openssl-devel \
pciutils \
net-tools \
sqlite-devel \
lapack-devel \
gcc-gfortran \
util-linux \
findutils \
&& yum clean all \
&& rm -rf /var/cache/yum \
&& rm -rf /tmp/*
# Copy files
COPY scripts/cann.sh /tmp/cann.sh
# Download CANN
RUN bash /tmp/cann.sh --download
# Install CANN
RUN bash /tmp/cann.sh --install && \
rm /tmp/cann.sh
# Phase 3: Copy results from previous phases
FROM ${BASE} as official
# Arguments
ARG TARGETPLATFORM
ARG PY_VERSION
ARG CANN_CHIP
ARG VERSION
# Environment variables
ENV PATH=/usr/local/python${PY_VERSION}/bin:${PATH}
ENV LD_LIBRARY_PATH=/usr/local/Ascend/driver/lib64/common/:/usr/local/Ascend/driver/lib64/driver/:${LD_LIBRARY_PATH}
# Change the default shell
SHELL [ "/bin/bash", "-c" ]
# Install dependencies
RUN yum update -y && \
yum install -y \
ca-certificates \
bash \
glibc \
sqlite-devel \
&& yum clean all \
&& rm -rf /var/cache/yum \
&& rm -rf /tmp/*
# Copy files
COPY --from=cann-installer /usr/local/python${PY_VERSION} /usr/local/python${PY_VERSION}
COPY --from=cann-installer /usr/local/Ascend /usr/local/Ascend
COPY --from=cann-installer /etc/Ascend /etc/Ascend
# Set environment variables for Python
RUN PY_PATH="PATH=/usr/local/python${PY_VERSION}/bin:\${PATH}" && \
echo "export ${PY_PATH}" >> /etc/profile && \
echo "export ${PY_PATH}" >> ~/.bashrc
# Set environment variables for CANN
RUN CANN_TOOLKIT_ENV_FILE="/usr/local/Ascend/ascend-toolkit/set_env.sh" && \
DRIVER_LIBRARY_PATH="LD_LIBRARY_PATH=/usr/local/Ascend/driver/lib64/common/:/usr/local/Ascend/driver/lib64/driver/:\${LD_LIBRARY_PATH}" && \
echo "export ${DRIVER_LIBRARY_PATH}" >> /etc/profile && \
echo "export ${DRIVER_LIBRARY_PATH}" >> ~/.bashrc && \
echo "source ${CANN_TOOLKIT_ENV_FILE}" >> /etc/profile && \
echo "source ${CANN_TOOLKIT_ENV_FILE}" >> ~/.bashrc
ENTRYPOINT [ "/bin/bash", "-c", "source /usr/local/Ascend/ascend-toolkit/set_env.sh && exec \"$@\"", "--" ]
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。