summaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2022-02-19 16:32:34 +0100
committerDaniel Friesel <derf@finalrewind.org>2022-02-19 16:32:34 +0100
commit8ec78343e72d4a5d86de94ff7bf747ccf67ef2fc (patch)
tree6419b1d8881a9f71a9b0f28a8afd0d698847175e /Dockerfile
parent4233dd1d73638738a34392ba1312e6979f3c8340 (diff)
Update docker setup. It's simple, and it works, but it's not best practice
Closes #4
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile32
1 files changed, 28 insertions, 4 deletions
diff --git a/Dockerfile b/Dockerfile
index d916c6c..63f33dc 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,6 +1,27 @@
-FROM debian:stretch-slim
+FROM debian:buster-slim as files
+
+ARG travelynx_version=git
+
+COPY docker-run.sh /app/
+COPY index.pl /app/
+COPY lib/ /app/lib/
+COPY public/ /app/public/
+COPY templates/ /app/templates/
+COPY share/ /app/share/
+
+WORKDIR /app
+
+RUN ln -sf ../local/imprint.html.ep templates && \
+ ln -sf ../local/privacy.html.ep templates && \
+ ln -sf ../local/travelynx.conf
+
+RUN sed -i "s/qx{git describe --dirty}/'${travelynx_version}'/" lib/Travelynx/Controller/Static.pm
+RUN sed -i "s/\$self->plugin('Config');/\$self->plugin('Config'); \$self->config->{version} = '${travelynx_version}';/" lib/Travelynx.pm
+
+FROM perl:5.30-slim
ARG DEBIAN_FRONTEND=noninteractive
+ARG APT_LISTCHANGES_FRONTEND=none
COPY cpanfile* /app/
WORKDIR /app
@@ -32,8 +53,11 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
libxml2-dev \
make \
zlib1g-dev \
- && apt-get autoremove -y
+ && apt-get autoremove -y \
+ && rm -rf /var/cache/apt/* /var/lib/apt/lists/*
+
+COPY --from=files /app/ /app/
-COPY . /app
+EXPOSE 8093
-CMD ["/app/docker-run.sh"]
+ENTRYPOINT ["/app/docker-run.sh"]