From dd4be3e2ff320a53215ab79173c8b1189b010098 Mon Sep 17 00:00:00 2001
From: Sebastian <sebastian.karius@informatik.uni-halle.de>
Date: Thu, 17 Oct 2024 14:20:48 +0200
Subject: [PATCH] use docker layer caching

---
 .gitlab-ci.yml                            |  4 +-
 docker-compose.yml                        | 30 ++++------
 docker/coder-ubuntu_24-python/Dockerfile  | 67 -----------------------
 docker/coder-ubuntu_24-python/docker.asc  | 62 ---------------------
 docker/coder-ubuntu_24-python/docker.list |  1 -
 5 files changed, 14 insertions(+), 150 deletions(-)
 delete mode 100644 docker/coder-ubuntu_24-python/Dockerfile
 delete mode 100644 docker/coder-ubuntu_24-python/docker.asc
 delete mode 100644 docker/coder-ubuntu_24-python/docker.list

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 85738bf..6d63849 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -13,11 +13,13 @@ docker-build:
   variables:
     DOCKER_HOST: tcp://docker:2375
     DOCKER_TLS_CERTDIR: ""
+    DOCKER_BUILDKIT: 1
+    COMPOSE_DOCKER_CLI_BUILD: 1
   before_script:
     - docker info
     - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
   script:
-    - docker compose build --pull
+    - docker compose build --pull --build-arg BUILDKIT_INLINE_CACHE=1
     - docker compose push
 
 helm-package:
diff --git a/docker-compose.yml b/docker-compose.yml
index b34b9e4..f1034a5 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,48 +1,40 @@
 services:
-  vdo-ninja-latest:
-    image: ${CI_REGISTRY}/studio-r215/containerize/vdo-ninja:latest
-    build:
-      dockerfile: Dockerfile
-      context: ./docker/vdo-ninja
-
   vdo-ninja-version:
     image: ${CI_REGISTRY}/studio-r215/containerize/vdo-ninja:24
     build:
       dockerfile: Dockerfile
       context: ./docker/vdo-ninja
-
-  coder-ubuntu-python:
-    image: ${CI_REGISTRY}/studio-r215/containerize/coder-ubuntu-python:latest
-    build:
-      dockerfile: Dockerfile
-      context: ./docker/coder-ubuntu_24-python
-
-  coder-ubuntu-python-24:
-    image: ${CI_REGISTRY}/studio-r215/containerize/coder-ubuntu-python:24
-    build:
-      dockerfile: Dockerfile
-      context: ./docker/coder-ubuntu_24-python
+      cache_from:
+        - ${CI_REGISTRY}/studio-r215/containerize/vdo-ninja:24
 
   coder-ubuntu-python-22:
       image: ${CI_REGISTRY}/studio-r215/containerize/coder-ubuntu-python:22
       build:
           dockerfile: Dockerfile
           context: ./docker/coder-ubuntu_22-python
+          cache_from:
+            - ${CI_REGISTRY}/studio-r215/containerize/coder-ubuntu-python:22
 
   coder-med:
     image: ${CI_REGISTRY}/studio-r215/containerize/coder-med:24
     build:
       dockerfile: Dockerfile
       context: ./docker/coder-med
+      cache_from:
+        - ${CI_REGISTRY}/studio-r215/containerize/coder-med:24
 
   libre-translate-cuda:
     image: ${CI_REGISTRY}/studio-r215/containerize/libre-translate:latest-cuda
     build:
       dockerfile: Dockerfile
       context: ./docker/libre-translate
+      cache_from:
+        - ${CI_REGISTRY}/studio-r215/containerize/libre-translate:latest-cuda
 
   php-fpm_83:
     image: ${CI_REGISTRY}/studio-r215/containerize/php-fpm:83
     build:
       dockerfile: Dockerfile
-      context: ./docker/php-fpm_83
\ No newline at end of file
+      context: ./docker/php-fpm_83
+      cache_from:
+        - ${CI_REGISTRY}/studio-r215/containerize/php-fpm:83
\ No newline at end of file
diff --git a/docker/coder-ubuntu_24-python/Dockerfile b/docker/coder-ubuntu_24-python/Dockerfile
deleted file mode 100644
index e189ffb..0000000
--- a/docker/coder-ubuntu_24-python/Dockerfile
+++ /dev/null
@@ -1,67 +0,0 @@
-FROM ubuntu:24.04
-LABEL authors="sebastian"
-
-ENV DEBIAN_FRONTEND=noninteractive
-RUN apt-get update && apt-get upgrade -y
-
-# install basic tools
-RUN apt-get install -y git wget curl
-
-# install python, pip and venv
-RUN apt-get install -y python3 python3-pip python3-venv
-
-# install pipx
-ENV TZ=Europe/Berlin
-RUN apt-get install -y pipx
-RUN pipx ensurepath
-
-# install poetry
-ENV PIPX_BIN_DIR="/usr/local/bin"
-RUN pipx install poetry
-RUN poetry completions bash >> ~/.bash_completion
-RUN PIPX_BIN_DIR="~/.local/bin"
-
-# install conda
-ENV PATH="${PATH}:/opt/conda/bin"
-RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-py312_24.4.0-0-Linux-x86_64.sh
-RUN bash Miniconda3-py312_24.4.0-0-Linux-x86_64.sh -b -p /opt/conda
-RUN rm Miniconda3-py312_24.4.0-0-Linux-x86_64.sh
-
-# prepare for coder usage
-COPY docker.asc /etc/apt/keyrings/docker.asc
-RUN chmod a+r /etc/apt/keyrings/docker.asc
-COPY docker.list /etc/apt/sources.list.d/docker.list
-RUN apt-get update
-RUN apt-get install -y build-essential \
-    ca-certificates \
-    containerd.io \
-    docker-ce \
-    docker-ce-cli \
-    docker-buildx-plugin \
-    docker-compose-plugin \
-    htop \
-    jq \
-    locales \
-    man \
-    software-properties-common \
-    sudo \
-    systemd \
-    systemd-sysv \
-    unzip \
-    rsync \
-    vim \
-    nano
-
-RUN systemctl enable docker
-RUN ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose
-ENV LANG=de_DE.UTF-8
-RUN useradd -ms /bin/bash coder
-RUN usermod -aG sudo coder
-
-# clean up
-RUN apt-get clean
-RUN rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
-
-# switch to coder user
-USER coder
-WORKDIR /home/coder
\ No newline at end of file
diff --git a/docker/coder-ubuntu_24-python/docker.asc b/docker/coder-ubuntu_24-python/docker.asc
deleted file mode 100644
index ee7872e..0000000
--- a/docker/coder-ubuntu_24-python/docker.asc
+++ /dev/null
@@ -1,62 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-
-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
-YT90qFF93M3v01BbxP+EIY2/9tiIPbrd
-=0YYh
------END PGP PUBLIC KEY BLOCK-----
diff --git a/docker/coder-ubuntu_24-python/docker.list b/docker/coder-ubuntu_24-python/docker.list
deleted file mode 100644
index e63070a..0000000
--- a/docker/coder-ubuntu_24-python/docker.list
+++ /dev/null
@@ -1 +0,0 @@
-deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu   noble stable
\ No newline at end of file
-- 
GitLab