diff --git a/Dockerfile b/Dockerfile
index 50aea0386e8d33cb9e8f7fbf460236dd4ed43031..b5c35c00cef2cc4f979838a33858ef304e812878 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-FROM jupyter/tensorflow-notebook
+FROM jupyter/tensorflow-notebook:python-3.9
 
 
 # ================================================================================
@@ -16,22 +16,27 @@ FROM jupyter/tensorflow-notebook
 # ================================================================================
 # Python environment
 # ================================================================================
+# TODO: build fixed requirement.txt
 
 WORKDIR /tmp/
 
-COPY --chown=${NB_UID}:${NB_GID} ai4stem/ ./ai4stem
-RUN pip install --no-cache-dir --requirement ./ai4stem/requirements.txt \
- && pip install --no-cache-dir ./ai4stem \
- && rm -rf ./ai4stem \
+# COPY --chown=${NB_UID}:${NB_GID} ai4stem/ ./ai4stem
+# RUN pip install --no-cache-dir --requirement ./ai4stem/requirements.txt \
+#  && pip install --no-cache-dir ./ai4stem \
+#  && fix-permissions "${CONDA_DIR}" \
+#  && fix-permissions "/home/${NB_USER}"
+
+RUN pip install --no-cache-dir 'git+https://github.com/AndreasLeitherer/ai4stem.git@v0.1.0' \
  && fix-permissions "${CONDA_DIR}" \
  && fix-permissions "/home/${NB_USER}"
 
-
 # ================================================================================
 # Switch back to jovyan to avoid accidental container runs as root
 # ================================================================================
 
 WORKDIR ${HOME}
 USER ${NB_UID}
+ENV DOCKER_STACKS_JUPYTER_CMD="nbclassic"
 
-COPY --chown=${NB_UID}:${NB_GID} ai4stem.ipynb .
+# COPY --chown=${NB_UID}:${NB_GID} ai4stem.ipynb .
+COPY --chown=${NB_UID}:${NB_GID} notebook/ ./
diff --git a/ai4stem b/ai4stem
index f54295cda648a74b86e3d8b97f8c2689ca35dd71..bb4a2b7e0a31b774f97883b6fed57546a5e9edaa 160000
--- a/ai4stem
+++ b/ai4stem
@@ -1 +1 @@
-Subproject commit f54295cda648a74b86e3d8b97f8c2689ca35dd71
+Subproject commit bb4a2b7e0a31b774f97883b6fed57546a5e9edaa