From 1ac0add659ddafb2b83b666e12f21091019b3d9b Mon Sep 17 00:00:00 2001 From: Oscar Santiago Date: Thu, 23 Oct 2025 17:01:47 +0200 Subject: [PATCH] feat: add Dockerfile for multi-stage build and dependencies installation --- Dockerfile | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..80bd7af2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,40 @@ +# Multi-Stage-Build: Basis-Image erstellen +FROM ruby:3.1-slim AS base + +# Installiere notwendige Pakete +RUN apt-get update && apt-get install -y \ + build-essential \ + default-jdk \ + git \ + unzip \ + wget \ + libxml2-dev \ + libxslt-dev \ + zlib1g-dev \ + bsdmainutils \ + libcurl4 \ + libcurl4-openssl-dev \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +# Installiere epubcheck +RUN wget https://github.com/w3c/epubcheck/releases/download/v4.2.6/epubcheck-4.2.6.zip \ + && unzip epubcheck-4.2.6.zip -d /opt/epubcheck \ + && rm epubcheck-4.2.6.zip + +# Produktions-Image +FROM base AS production + +# Setze den Arbeitsordner +WORKDIR /app + +# Kopiere die Projektdateien +COPY . . + +# Installiere die Ruby-Abhängigkeiten +RUN bundle install + +# Standardbefehl zum Bauen des Projekts +CMD ["bundle", "exec", "rake", "book:build"] +# Die folgende Zeile einkommentieren und die vorherige auskommentieren, um zu bauen ohne ein Container Image zuvor zu erstellen +#RUN bundle exec rake book:build \ No newline at end of file