59 lines
1.5 KiB
Docker
59 lines
1.5 KiB
Docker
# syntax=docker/dockerfile:1.7
|
|
FROM ubuntu:24.04 AS builder
|
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
|
|
|
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
|
|
--mount=type=cache,target=/var/lib/apt/lists,sharing=locked \
|
|
apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
build-essential \
|
|
ca-certificates \
|
|
cmake \
|
|
git \
|
|
libboost-filesystem-dev \
|
|
libboost-iostreams-dev \
|
|
libboost-locale-dev \
|
|
libboost-program-options-dev \
|
|
libboost-regex-dev \
|
|
libboost-system-dev \
|
|
libboost-thread-dev \
|
|
libbz2-dev \
|
|
libcurl4-openssl-dev \
|
|
libmariadb-dev \
|
|
libmariadb-dev-compat \
|
|
libncurses-dev \
|
|
libreadline-dev \
|
|
libssl-dev \
|
|
zlib1g-dev \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /src
|
|
COPY . .
|
|
|
|
RUN cmake -S . -B /build \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_INSTALL_PREFIX=/opt/sylvania \
|
|
-DSERVERS=OFF \
|
|
-DTOOLS=ON \
|
|
&& cmake --build /build --parallel 2 \
|
|
&& cmake --install /build
|
|
|
|
FROM ubuntu:24.04
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
libboost-filesystem1.83.0 \
|
|
libboost-iostreams1.83.0 \
|
|
libboost-program-options1.83.0 \
|
|
libboost-regex1.83.0 \
|
|
libboost-system1.83.0 \
|
|
libbz2-1.0 \
|
|
libssl3t64 \
|
|
zlib1g \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=builder /opt/sylvania/bin /opt/sylvania/bin
|
|
WORKDIR /client
|
|
|