tmp
This commit is contained in:
parent
2d2b39d5c1
commit
cbe56092a2
69
Dockerfile
69
Dockerfile
@ -1,11 +1,11 @@
|
|||||||
# 导入代码库镜像 视包含的代码库多少编译后的镜像可包含部分至全部GCTL代码库内容
|
# 导入代码库镜像 视包含的代码库多少编译后的镜像可包含部分至全部GCTL代码库内容
|
||||||
FROM gctl:2.0.9 AS gctl_library
|
FROM gctl:2.1 AS gctl_library
|
||||||
FROM gctl_mesh:2.0.9 AS gctl_mesh_library
|
FROM gctl_mesh:2.1 AS gctl_mesh_library
|
||||||
FROM gctl_optimization:2.0.9 AS gctl_optimization_library
|
FROM gctl_optimization:2.1 AS gctl_optimization_library
|
||||||
FROM gctl_ai:2.0.9 AS gctl_ai_library
|
FROM gctl_ai:2.1 AS gctl_ai_library
|
||||||
FROM gctl_potential:2.0.9 AS gctl_potential_library
|
FROM gctl_potential:2.1 AS gctl_potential_library
|
||||||
FROM gctl_seismic:2.0.9 AS gctl_seismic_library
|
FROM gctl_seismic:2.1 AS gctl_seismic_library
|
||||||
FROM gctl_elecmag:2.0.9 AS gctl_elecmag_library
|
FROM gctl_elecmag:2.1 AS gctl_elecmag_library
|
||||||
# 编译平台
|
# 编译平台
|
||||||
FROM ubuntu:20.04 AS builder
|
FROM ubuntu:20.04 AS builder
|
||||||
# 从代码库镜像中复制库文件和头文件
|
# 从代码库镜像中复制库文件和头文件
|
||||||
@ -24,13 +24,28 @@ COPY --from=gctl_ai_library /usr/local/include /usr/local/include
|
|||||||
COPY --from=gctl_library /usr/local/lib /usr/local/lib
|
COPY --from=gctl_library /usr/local/lib /usr/local/lib
|
||||||
COPY --from=gctl_library /usr/local/include /usr/local/include
|
COPY --from=gctl_library /usr/local/include /usr/local/include
|
||||||
|
|
||||||
# 安装编译工具
|
# 避免交互提示
|
||||||
RUN apt-get update && apt-get install -y g++ make cmake
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
# 安装依赖库
|
|
||||||
RUN apt-get install -y --no-install-recommends libfftw3-dev libnetcdf-dev gmt libgmt-dev libgsl-dev libncurses-dev
|
# 安装编译工具和依赖
|
||||||
RUN apt-get install -y --no-install-recommends libopenblas-dev libeigen3-dev
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
RUN apt-get install -y pkg-config
|
g++ \
|
||||||
RUN apt-get install -y autoconf automake
|
make \
|
||||||
|
cmake \
|
||||||
|
libfftw3-dev \
|
||||||
|
libnetcdf-dev \
|
||||||
|
gmt \
|
||||||
|
libgmt-dev \
|
||||||
|
libgsl-dev \
|
||||||
|
libncurses-dev \
|
||||||
|
libopenblas-dev \
|
||||||
|
liblapacke-dev \
|
||||||
|
libeigen3-dev \
|
||||||
|
pkg-config \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# 创建工作目录
|
# 创建工作目录
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
@ -83,18 +98,26 @@ RUN mkdir build && cd build && cmake .. && make && make install
|
|||||||
FROM ubuntu:20.04
|
FROM ubuntu:20.04
|
||||||
# 设置非交互式安装
|
# 设置非交互式安装
|
||||||
ENV DEBIAN_FRONTEND=noninteractive
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
# 安装运行时必要依赖
|
# 安装运行时必要依赖
|
||||||
RUN apt-get update && apt-get install -y g++ make cmake
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||||
RUN apt-get install -y --no-install-recommends libfftw3-dev libnetcdf-dev gmt libgmt-dev libgsl-dev libncurses-dev
|
g++ make cmake \
|
||||||
RUN apt-get install -y --no-install-recommends libopenblas-dev libeigen3-dev
|
libfftw3-dev \
|
||||||
RUN apt-get install -y gnuplot
|
libnetcdf-dev \
|
||||||
RUN apt-get install -y pkg-config
|
gmt libgmt-dev \
|
||||||
RUN apt-get install -y autoconf automake
|
libgsl-dev \
|
||||||
RUN apt-get install -y ghostscript
|
libncurses-dev \
|
||||||
|
libopenblas-dev liblapacke-dev libeigen3-dev \
|
||||||
|
gnuplot \
|
||||||
|
pkg-config \
|
||||||
|
autoconf automake \
|
||||||
|
ghostscript \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# 从构建阶段复制编译后的库和头文件
|
# 从构建阶段复制编译后的库和头文件
|
||||||
COPY --from=builder /usr/local/lib /usr/local/lib
|
COPY --from=builder /usr/local/lib /usr/local/lib
|
||||||
COPY --from=builder /usr/local/include /usr/local/include
|
COPY --from=builder /usr/local/include /usr/local/include
|
||||||
COPY --from=builder /usr/local/sbin /usr/local/sbin
|
COPY --from=builder /usr/local/sbin /usr/local/sbin
|
||||||
# 设置可执行文件列表
|
# 设置可执行文件列表
|
||||||
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
|
ENV LD_LIBRARY_PATH=${LD_LIBRARY_PATH:-}:/usr/local/lib
|
||||||
ENV PATH=$PATH:/usr/local/sbin
|
ENV PATH=${PATH:-}:/usr/local/sbin
|
||||||
|
Loading…
Reference in New Issue
Block a user