Initial commit: Script MD to Print avec Docker
This commit is contained in:
58
Dockerfile
Normal file
58
Dockerfile
Normal file
@@ -0,0 +1,58 @@
|
||||
FROM debian:bookworm-slim
|
||||
|
||||
# Métadonnées
|
||||
LABEL maintainer="MD_to_Print"
|
||||
LABEL description="Script automatique Markdown vers PDF et impression"
|
||||
LABEL version="1.0.0"
|
||||
|
||||
# Variables d'environnement
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
TZ=Europe/Paris \
|
||||
LANG=fr_FR.UTF-8 \
|
||||
LC_ALL=fr_FR.UTF-8
|
||||
|
||||
# Installation des dépendances système et locales
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
locales \
|
||||
&& sed -i '/fr_FR.UTF-8/s/^# //g' /etc/locale.gen && \
|
||||
locale-gen fr_FR.UTF-8 && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
pandoc \
|
||||
texlive-latex-base \
|
||||
texlive-xetex \
|
||||
texlive-fonts-recommended \
|
||||
texlive-latex-extra \
|
||||
texlive-lang-french \
|
||||
fonts-dejavu \
|
||||
cups \
|
||||
cups-client \
|
||||
evince \
|
||||
curl \
|
||||
ca-certificates \
|
||||
make \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& apt-get clean
|
||||
|
||||
# Création d'un utilisateur non-root pour sécurité
|
||||
RUN useradd -m -u 1000 -s /bin/bash mdprint && \
|
||||
mkdir -p /workspace/documents /workspace/output /workspace/logs && \
|
||||
chown -R mdprint:mdprint /workspace
|
||||
|
||||
# Répertoire de travail
|
||||
WORKDIR /workspace
|
||||
|
||||
# Copie du script principal
|
||||
COPY md_to_print.sh /usr/local/bin/md_to_print.sh
|
||||
RUN chmod +x /usr/local/bin/md_to_print.sh
|
||||
|
||||
# Copie du fichier de configuration exemple
|
||||
COPY config.example.conf /workspace/config.example.conf
|
||||
|
||||
# Basculer vers l'utilisateur non-root
|
||||
USER mdprint
|
||||
|
||||
# Point d'entrée
|
||||
ENTRYPOINT ["/usr/local/bin/md_to_print.sh"]
|
||||
CMD ["--help"]
|
||||
|
||||
Reference in New Issue
Block a user