Skip to content

Commit 85e7b38

Browse files
author
Gonzalo Diaz
committed
[CONFIG] [Docker] Ubuntu base image re-rewrite
1 parent 390959b commit 85e7b38

File tree

1 file changed

+23
-16
lines changed

1 file changed

+23
-16
lines changed

Dockerfile

Lines changed: 23 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ubuntu:24.04 AS init
1+
FROM ubuntu:24.10 AS init
22

33
ENV WORKDIR=/app
44
WORKDIR ${WORKDIR}
@@ -9,17 +9,12 @@ RUN apt-get -y update && \
99

1010
FROM init AS builder
1111

12-
# build tools
12+
ARG DEBIAN_FRONTEND=noninteractive
13+
ENV TZ=Etc/UTC
1314

15+
# build tools
1416
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/noble/ llvm-toolchain-noble main" && \
20-
apt-get -y update && \
2117
apt-get -y install --no-install-recommends --no-install-suggests build-essential cmake g++ make pkg-config && \
22-
apt-get -y install --no-install-recommends --no-install-suggests clang-format && \
2318
rm -rf /var/lib/apt/lists/*
2419

2520
# vcpkg Package Manager
@@ -63,13 +58,25 @@ FROM builder AS development
6358

6459
FROM builder AS lint
6560

66-
RUN apt-get -y update && \
67-
apt-get -y install --no-install-recommends --no-install-suggests dialog apt-utils && \
68-
apt-get -y install --no-install-recommends --no-install-suggests yamllint && \
69-
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+
rm /usr/lib/python3.*/EXTERNALLY-MANAGED && \
77+
pip install --no-cache-dir yamllint && \
7078
apt-get -y install --no-install-recommends --no-install-suggests cppcheck && \
71-
rm -rf /var/lib/apt/lists/* && \
72-
npm install -g --ignore-scripts markdownlint-cli
79+
rm -rf /var/lib/apt/lists/*
7380

7481
# Code source
7582
COPY ./src ${WORKDIR}/src
@@ -98,7 +105,7 @@ COPY --from=builder ${WORKDIR}/build ${WORKDIR}/
98105

99106
CMD ["make", "test"]
100107

101-
FROM ubuntu:24.04 AS production
108+
FROM ubuntu:24.10 AS production
102109

103110
ENV LOG_LEVEL=INFO
104111
ENV BRUTEFORCE=false

0 commit comments

Comments
 (0)