34 lines
985 B
Docker
34 lines
985 B
Docker
FROM debian:bullseye as builder
|
|
MAINTAINER Martin Gerhardy <martin.gerhardy@gmail.com>
|
|
|
|
ENV DEBIAN_FRONTEND noninteractive
|
|
|
|
RUN apt-get update -q && apt-get install -y cmake g++ pkg-config ninja-build \
|
|
opencl-c-headers postgresql-server-dev-all \
|
|
uuid-dev ocl-icd-libopencl1
|
|
|
|
ARG TARGETDIR=/tmp/@ROOT_PROJECT_NAME@
|
|
RUN mkdir ${TARGETDIR}
|
|
COPY . ${TARGETDIR}
|
|
|
|
RUN mkdir ${TARGETDIR}/build
|
|
RUN cmake --version
|
|
RUN cmake -H${TARGETDIR} -B${TARGETDIR}/build -GNinja -DCMAKE_BUILD_TYPE=Release
|
|
RUN cmake --build ${TARGETDIR}/build --target server
|
|
RUN cmake --install ${TARGETDIR}/build --component server --prefix installation
|
|
|
|
FROM debian:buster
|
|
|
|
RUN apt-get update -q && \
|
|
apt-get install -y libatomic1 libpq5 \
|
|
ocl-icd-libopencl1 uuid-runtime && \
|
|
apt-get clean && \
|
|
rm -rf /var/lib/apt/lists/*
|
|
|
|
COPY --from=builder ${TARGETDIR}/build/@PROJECT_NAME@ /opt/@ROOT_PROJECT_NAME@/
|
|
|
|
EXPOSE @SERVER_PORT@
|
|
|
|
WORKDIR /opt/@ROOT_PROJECT_NAME@
|
|
ENTRYPOINT ./@ROOT_PROJECT_NAME@-@PROJECT_NAME@
|