diff --git a/Dockerfile b/Dockerfile
index e6d4272387faee01840d16dcdab89b9e5b5b4464..e77c3b647d5d07ed11d67076722b8fb7d360ef33 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,15 +1,24 @@
-FROM registry.git.autistici.org/ai3/docker/s6-base:master
+FROM registry.git.autistici.org/ai3/docker/s6-base:master AS base
 
 RUN apt-get -q update && \
     env DEBIAN_FRONTEND=noninteractive apt-get -qy install --no-install-recommends \
-        python3-flask python3-sqlalchemy python3-flask-sqlalchemy \
-        python3-setuptools ca-certificates && \
+        python3-flask python3-sqlalchemy python3-flask-sqlalchemy python3-cheroot \
+        python3-setuptools python3-pip && \
     apt-get clean && \
     rm -fr /var/lib/apt/lists/*
 
-ADD . /tmp/src
-WORKDIR /tmp/src
-RUN python3 setup.py install
+FROM base AS build
 
+ADD . /src
+WORKDIR /src
+RUN python3 setup.py bdist_wheel
+
+FROM base
+
+COPY --from=build /src/dist/*.whl /tmp/wheels/
 COPY conf/ /etc/
 COPY feedbackloop.sh /usr/local/bin/feedbackloop
+
+RUN cd /tmp/wheels && pip3 install *.whl && rm -fr /tmp/wheels
+
+ENV FLASK_APP=feedbackloop.main
diff --git a/feedbackloop.sh b/feedbackloop.sh
index 2f9dc381c0dbca94173436e1696b63c1ed0a6bc4..1bb029b768c6c2259a36bf529842cdb5ce143742 100755
--- a/feedbackloop.sh
+++ b/feedbackloop.sh
@@ -1,3 +1,3 @@
 #!/bin/sh
 
-exec flask --app feedbackloop.main "$@"
+exec flask "$@"