BUILD - Optimize Dockerfile by using alpine as base image (#277)

This commit is contained in:
Gent Semaj 2024-10-28 21:26:25 -07:00
commit 1543dac4e0
Signed by untrusted user: ycc
GPG Key ID: 2D76C57BF6BEADC4
2 changed files with 15 additions and 8 deletions

View File

@ -1,28 +1,33 @@
# build # build
FROM debian:stable-slim AS build FROM alpine:3 as build
WORKDIR /usr/src/app WORKDIR /usr/src/app
RUN apt-get -y update && apt-get install -y \ RUN apk update && apk upgrade && apk add \
linux-headers \
git \ git \
clang \ clang18 \
make \ make \
libsqlite3-dev sqlite-dev
COPY src ./src COPY src ./src
COPY vendor ./vendor COPY vendor ./vendor
COPY .git ./.git COPY .git ./.git
COPY Makefile CMakeLists.txt version.h.in ./ COPY Makefile CMakeLists.txt version.h.in ./
RUN sed -i 's/^CC=clang$/&-18/' Makefile
RUN sed -i 's/^CXX=clang++$/&-18/' Makefile
RUN make nosandbox -j$(nproc) RUN make nosandbox -j$(nproc)
# prod # prod
FROM debian:stable-slim FROM alpine:3
WORKDIR /usr/src/app WORKDIR /usr/src/app
RUN apt-get -y update && apt-get install -y \ RUN apk update && apk upgrade && apk add \
libsqlite3-dev libstdc++ \
sqlite-dev
COPY --from=build /usr/src/app/bin/fusion /bin/fusion COPY --from=build /usr/src/app/bin/fusion /bin/fusion
COPY sql ./sql COPY sql ./sql
@ -31,6 +36,6 @@ CMD ["/bin/fusion"]
EXPOSE 23000/tcp EXPOSE 23000/tcp
EXPOSE 23001/tcp EXPOSE 23001/tcp
EXPOSE 8001/tcp EXPOSE 8003/tcp
LABEL Name=openfusion Version=1.6.0 LABEL Name=openfusion Version=1.6.0

View File

@ -1,6 +1,8 @@
#pragma once #pragma once
#include <stdint.h>
#include <string> #include <string>
#include <time.h>
namespace settings { namespace settings {
extern int VERBOSITY; extern int VERBOSITY;