File tree 1 file changed +10
-23
lines changed 1 file changed +10
-23
lines changed Original file line number Diff line number Diff line change 1
- # 使用官方Ubuntu基础镜像
2
1
FROM ubuntu:22.04
3
2
4
- # 设置非交互式前端以避免安装过程中出现提示
5
3
ENV DEBIAN_FRONTEND=noninteractive
6
4
7
- # 更新包列表并安装基本工具
5
+ # 安装基础工具链
8
6
RUN apt-get update && apt-get install -y \
9
7
git \
10
8
cmake \
11
9
build-essential \
12
10
curl \
13
11
&& rm -rf /var/lib/apt/lists/*
14
12
15
- # 安装主要依赖项(分步进行)
13
+ # 安装主要依赖项
16
14
RUN apt-get update && apt-get install -y \
17
15
libjsoncpp-dev \
18
16
uuid-dev \
19
17
libssl-dev \
20
18
zlib1g-dev \
21
- && rm -rf /var/lib/apt/lists/*
22
-
23
- # 安装数据库相关依赖
24
- RUN apt-get update && apt-get install -y \
19
+ libpq-dev \
20
+ libbrotli-dev \
25
21
libmysqlclient-dev \
26
22
libsqlite3-dev \
27
23
libhiredis-dev \
28
- && rm -rf /var/lib/apt/lists/*
29
-
30
- # 安装其他依赖
31
- RUN apt-get update && apt-get install -y \
32
24
libvulkan-dev \
33
25
libcurl4-openssl-dev \
26
+ doxygen \
34
27
&& rm -rf /var/lib/apt/lists/*
35
28
36
- # 设置工作目录
37
29
WORKDIR /app
38
-
39
- # 复制项目文件
40
30
COPY . .
41
31
42
- # 初始化并更新git子模块
43
- RUN git submodule init && git submodule update
32
+ # 递归初始化所有子模块
33
+ RUN git submodule update -- init --recursive
44
34
45
- # 创建构建目录并构建项目
35
+ # 构建配置(添加详细日志)
46
36
RUN mkdir build && \
47
37
cd build && \
48
- cmake -DCMAKE_CXX_FLAGS= "-w" -DCMAKE_C_FLAGS= "-w" .. && \
49
- make -j$(nproc)
38
+ cmake -DCMAKE_BUILD_TYPE=Release .. && \
39
+ make -j$(nproc) VERBOSE=1
50
40
51
- # 设置默认端口环境变量
52
41
ENV PORT=8080
53
-
54
- # 设置容器启动命令
55
42
ENTRYPOINT ["sh" , "-c" , "./build/bin/UniAPI ${PORT}" ]
You can’t perform that action at this time.
0 commit comments