Skip to content
Snippets Groups Projects
Unverified Commit afd1d320 authored by Robby3St's avatar Robby3St
Browse files

feat(Dockerfile): add Dockerfile for local builds

parent d2e8279a
No related branches found
No related tags found
1 merge request!2Draft: feat(Dockerfile): add Dockerfile for local builds
Pipeline #282307 passed
FROM ubuntu:24.04
WORKDIR /usr/local/bin
RUN apt-get update && apt-get install -y python3.8 python3-pip pipx curl pandoc inotify-tools
RUN pipx install poetry==2.0.0
# Ensure pipx installs globally and the path is available
ENV PIPX_BIN_DIR=/root/.local/bin
ENV PATH=$PIPX_BIN_DIR:$PATH
#texlive-latex-base texlive-fonts-recommended texlive-fonts-extra texlive-latex-extra curl
# RUN python3 -m pip install poetry
RUN curl -L -o decker https://github.com/decker-edu/decker/releases/download/latest/decker-latest-Linux-X64-3f4150d61ca167361b02665da969da769ca98e7c
RUN chmod +x decker
WORKDIR /usr/app
VOLUME /usr/app/slides
COPY . .
RUN chmod +x entrypoint.sh
EXPOSE 8888
CMD [ "/usr/app/entrypoint.sh" ]
# RUN /usr/local/bin/decker --server
# RUN pandoc -t beamer output/fvv-folien-deck.md -o output/public/fvv-folien.pdf
# RUN decker decks
#
...@@ -8,7 +8,7 @@ echo "This is just a temporary directory for building the slides. This should be ...@@ -8,7 +8,7 @@ echo "This is just a temporary directory for building the slides. This should be
# Run python rendering # Run python rendering
echo "Install the python package." echo "Install the python package."
poetry install poetry install
poetry run python render.py poetry run python $(pwd)/render.py
# Merge all slide chunks into one output deck # Merge all slide chunks into one output deck
echo "Merge all slide chunks into one with the support of Pandoc." echo "Merge all slide chunks into one with the support of Pandoc."
......
#!/bin/bash
set -e
echo "Starting initial build..."
./build.sh
echo "Starting Decker server in background..."
cd output
/usr/local/bin/decker --server &
DECKER_PID=$!
cd ..
echo "Watching for slide changes..."
while inotifywait -r -e modify,create,delete slides/; do
echo "Change detected. Rebuilding..."
./build.sh
done
...@@ -154,5 +154,5 @@ files = [ ...@@ -154,5 +154,5 @@ files = [
[metadata] [metadata]
lock-version = "2.1" lock-version = "2.1"
python-versions = ">=3.13" python-versions = ">=3.12"
content-hash = "d989bba1d7bebb6c4da3b16985fd48500cce9011e55d875f48d7cae4c85b2c77" content-hash = "254a91d1ab66eefe761d354d9272529d8dbb4173136ee3ae72adc80e50e7bc7d"
...@@ -6,7 +6,7 @@ authors = [ ...@@ -6,7 +6,7 @@ authors = [
{name = "Robin Stecher"} {name = "Robin Stecher"}
] ]
readme = "README.md" readme = "README.md"
requires-python = ">=3.13" requires-python = ">=3.12"
dependencies = [ dependencies = [
"jinja2 (>=3.1.6,<4.0.0)", "jinja2 (>=3.1.6,<4.0.0)",
"pyyaml (>=6.0.2,<7.0.0)" "pyyaml (>=6.0.2,<7.0.0)"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment