1
- FROM ubuntu:22 .04 AS init
1
+ FROM ubuntu:24 .04 AS init
2
2
3
3
ENV WORKDIR=/app
4
4
WORKDIR ${WORKDIR}
@@ -9,18 +9,12 @@ RUN apt-get -y update && \
9
9
10
10
FROM init AS builder
11
11
12
- # build tools
12
+ ARG DEBIAN_FRONTEND=noninteractive
13
+ ENV TZ=Etc/UTC
13
14
15
+ # build tools
14
16
RUN apt-get update && \
15
- apt-get -y install --no-install-recommends --no-install-suggests gnupg software-properties-common && \
16
- rm -rf /var/lib/apt/lists/*
17
- ADD https://apt.llvm.org/llvm-snapshot.gpg.key llvm-snapshot.gpg.key
18
- RUN apt-key add llvm-snapshot.gpg.key && \
19
- apt-add-repository "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy main" && \
20
- apt-get -y update && \
21
- apt-get -y install --no-install-recommends --no-install-suggests clang-format && \
22
- DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install tzdata && \
23
- apt-get -y install --no-install-recommends --no-install-suggests build-essential cmake g++ make && \
17
+ apt-get -y install --no-install-recommends --no-install-suggests build-essential cmake g++ make pkg-config && \
24
18
rm -rf /var/lib/apt/lists/*
25
19
26
20
# vcpkg Package Manager
@@ -64,13 +58,24 @@ FROM builder AS development
64
58
65
59
FROM builder AS lint
66
60
67
- RUN apt-get -y update && \
68
- apt-get -y install --no-install-recommends --no-install-suggests dialog apt-utils && \
69
- apt-get -y install --no-install-recommends --no-install-suggests yamllint && \
70
- apt-get -y install --no-install-recommends --no-install-suggests nodejs npm && \
61
+ RUN apt-get update && \
62
+ apt-get -y install --no-install-recommends --no-install-suggests gnupg software-properties-common && \
63
+ rm -rf /var/lib/apt/lists/*
64
+ ADD https://apt.llvm.org/llvm-snapshot.gpg.key llvm-snapshot.gpg.key
65
+ RUN apt-key add llvm-snapshot.gpg.key && \
66
+ apt-add-repository "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy main" && \
67
+ apt-get -y update && \
68
+ apt-get -y install --no-install-recommends --no-install-suggests clang-format && \
69
+ rm -rf /var/lib/apt/lists/*
70
+
71
+ ADD https://deb.nodesource.com/setup_22.x nodesource_setup.sh
72
+ RUN bash nodesource_setup.sh && \
73
+ apt-get -y install --no-install-recommends --no-install-suggests nodejs && \
74
+ npm install -g --ignore-scripts markdownlint-cli && \
75
+ apt-get -y install --no-install-recommends --no-install-suggests python3 python3-pip && \
76
+ pip install --no-cache-dir yamllint && \
71
77
apt-get -y install --no-install-recommends --no-install-suggests cppcheck && \
72
- rm -rf /var/lib/apt/lists/* && \
73
- npm install -g --ignore-scripts markdownlint-cli
78
+ rm -rf /var/lib/apt/lists/*
74
79
75
80
# Code source
76
81
COPY ./src ${WORKDIR}/src
@@ -99,7 +104,7 @@ COPY --from=builder ${WORKDIR}/build ${WORKDIR}/
99
104
100
105
CMD ["make" , "test" ]
101
106
102
- FROM ubuntu:22 .04 AS production
107
+ FROM ubuntu:24 .04 AS production
103
108
104
109
ENV LOG_LEVEL=INFO
105
110
ENV BRUTEFORCE=false
0 commit comments