diff --git a/dbrepo-data-service/rest-service/src/main/java/at/tuwien/handlers/ApiExceptionHandler.java b/dbrepo-data-service/rest-service/src/main/java/at/tuwien/handlers/ApiExceptionHandler.java
index b15254702a491908482663163defb530e5cbcf6a..6aa48b157082afe6686fccca36b375723cc3b44b 100644
--- a/dbrepo-data-service/rest-service/src/main/java/at/tuwien/handlers/ApiExceptionHandler.java
+++ b/dbrepo-data-service/rest-service/src/main/java/at/tuwien/handlers/ApiExceptionHandler.java
@@ -94,6 +94,13 @@ public class ApiExceptionHandler extends ResponseEntityExceptionHandler {
         return generic_handle(e.getClass(), e.getLocalizedMessage());
     }
 
+    @Hidden
+    @ResponseStatus(code = HttpStatus.LOCKED)
+    @ExceptionHandler(ContainerQuotaException.class)
+    public ResponseEntity<ApiErrorDto> handle(ContainerQuotaException e) {
+        return generic_handle(e.getClass(), e.getLocalizedMessage());
+    }
+
     @Hidden
     @ResponseStatus(code = HttpStatus.FORBIDDEN)
     @ExceptionHandler(CredentialsInvalidException.class)
diff --git a/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java b/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java
index 3c6967b22c08f06fb368579ba7577c17edd1686b..62319662e24b78f9e456d1d0cabd8fd79639c85f 100644
--- a/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java
+++ b/dbrepo-metadata-service/rest-service/src/main/java/at/tuwien/endpoints/ContainerEndpoint.java
@@ -65,11 +65,11 @@ public class ContainerEndpoint {
     })
     public ResponseEntity<List<ContainerBriefDto>> findAll(@RequestParam(required = false) Integer limit) {
         log.debug("endpoint find all containers, limit={}", limit);
-        final List<Container> containers = containerService.getAll(limit);
-        final List<ContainerBriefDto> dtos = containers.stream()
+        final List<ContainerBriefDto> dtos = containerService.getAll(limit)
+                .stream()
                 .map(metadataMapper::containerToDatabaseContainerBriefDto)
                 .collect(Collectors.toList());
-        log.trace("find all containers resulted in containers {}", dtos);
+        log.debug("find all containers resulted in {} container(s)", dtos.size());
         return ResponseEntity.ok()
                 .body(dtos);
     }
diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java
index 7706e185bd3721fdddec7daed15ce8df628b0bad..ab3f4485b2cf35134c2d0ee126ee30af04636165 100644
--- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java
+++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/ContainerEndpointUnitTest.java
@@ -8,6 +8,7 @@ import at.tuwien.entities.container.Container;
 import at.tuwien.exception.*;
 import at.tuwien.service.impl.ContainerServiceImpl;
 import lombok.extern.log4j.Log4j2;
+import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Test;
 import org.junit.jupiter.api.extension.ExtendWith;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -37,6 +38,11 @@ public class ContainerEndpointUnitTest extends AbstractUnitTest {
     @Autowired
     private ContainerEndpoint containerEndpoint;
 
+    @BeforeEach
+    public void beforeEach() {
+        genesis();
+    }
+
     @Test
     @WithAnonymousUser
     public void findById_anonymous_succeeds() throws ContainerNotFoundException {
diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/ImageServiceUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/ImageServiceUnitTest.java
index bce3c7bc125636591d86a83311a4315ab677fba3..524c5715b4fd59e24c3f972a3acf2bd08453d99b 100644
--- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/ImageServiceUnitTest.java
+++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/ImageServiceUnitTest.java
@@ -1,5 +1,6 @@
 package at.tuwien.service;
 
+import at.tuwien.exception.ImageInvalidException;
 import at.tuwien.exception.ImageNotFoundException;
 import at.tuwien.test.AbstractUnitTest;
 import at.tuwien.api.container.image.ImageChangeDto;
@@ -82,8 +83,8 @@ public class ImageServiceUnitTest extends AbstractUnitTest {
                 .build();
 
         /* mock */
-        when(imageRepository.save(any(ContainerImage.class)))
-                .thenThrow(ConstraintViolationException.class);
+        when(imageRepository.findByNameAndVersion(IMAGE_1_NAME, IMAGE_1_VERSION))
+                .thenReturn(Optional.of(IMAGE_1));
 
         /* test */
         assertThrows(ImageAlreadyExistsException.class, () -> {
@@ -91,6 +92,27 @@ public class ImageServiceUnitTest extends AbstractUnitTest {
         });
     }
 
+    @Test
+    public void create_multipleDefaults_fails() {
+        final ImageCreateDto request = ImageCreateDto.builder()
+                .name(IMAGE_1_NAME)
+                .version("10.5")
+                .defaultPort(IMAGE_1_PORT)
+                .isDefault(true)
+                .build();
+
+        /* mock */
+        when(imageRepository.findByNameAndVersion(IMAGE_1_NAME, IMAGE_1_VERSION))
+                .thenReturn(Optional.empty());
+        when(imageRepository.findByIsDefault(true))
+                .thenReturn(Optional.of(IMAGE_1));
+
+        /* test */
+        assertThrows(ImageInvalidException.class, () -> {
+            imageService.create(request, USER_1_PRINCIPAL);
+        });
+    }
+
     @Test
     public void update_succeeds() {
         final ImageServiceImpl mockImageService = mock(ImageServiceImpl.class);
diff --git a/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java b/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java
index 40556f3f5bc59838bb16953453d8c0fb7539f916..6ade19c1ec0f6c742a97731d3a97482fea97923d 100644
--- a/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java
+++ b/dbrepo-metadata-service/test/src/main/java/at/tuwien/test/BaseTest.java
@@ -1146,6 +1146,7 @@ public abstract class BaseTest {
             .host(CONTAINER_2_HOST)
             .port(CONTAINER_2_PORT)
             .quota(CONTAINER_2_QUOTA)
+            .databases(List.of())
             .privilegedUsername(CONTAINER_2_PRIVILEGED_USERNAME)
             .privilegedPassword(CONTAINER_2_PRIVILEGED_PASSWORD)
             .build();
@@ -1191,6 +1192,7 @@ public abstract class BaseTest {
             .host(CONTAINER_3_HOST)
             .port(CONTAINER_3_PORT)
             .quota(CONTAINER_3_QUOTA)
+            .databases(List.of())
             .privilegedUsername(CONTAINER_3_PRIVILEGED_USERNAME)
             .privilegedPassword(CONTAINER_3_PRIVILEGED_PASSWORD)
             .build();
diff --git a/docker-compose.yml b/docker-compose.yml
index 9fcad8c366fe46d31ad22f381c686afc0d27badb..96fb14f99510d4be52433188cf1b38b04f6228b6 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,8 +1,6 @@
 volumes:
   metadata-db-data:
   data-db-data:
-  data2-db-data:
-  data3-db-data:
   auth-db-data:
   broker-service-data:
   upload-service-data:
@@ -53,42 +51,6 @@ services:
     logging:
       driver: json-file
 
-  dbrepo-data2-db:
-    restart: "no"
-    container_name: dbrepo-data2-db
-    hostname: data2-db
-    image: docker.io/bitnami/mariadb:10.5.26-debian-12-r2
-    volumes:
-      - data2-db-data:/bitnami/mariadb
-      - "${SHARED_VOLUME:-/tmp}:/tmp"
-    environment:
-      MARIADB_ROOT_PASSWORD: "${DATA_DB_PASSWORD:-dbrepo}"
-    healthcheck:
-      test: mysqladmin ping --user=root --password="${DATA_DB_PASSWORD:-dbrepo}" --silent
-      interval: 10s
-      timeout: 5s
-      retries: 12
-    logging:
-      driver: json-file
-
-  dbrepo-data3-db:
-    restart: "no"
-    container_name: dbrepo-data3-db
-    hostname: data3-db
-    image: docker.io/bitnami/mariadb:11.4.3-debian-12-r1
-    volumes:
-      - data3-db-data:/bitnami/mariadb
-      - "${SHARED_VOLUME:-/tmp}:/tmp"
-    environment:
-      MARIADB_ROOT_PASSWORD: "${DATA_DB_PASSWORD:-dbrepo}"
-    healthcheck:
-      test: mysqladmin ping --user=root --password="${DATA_DB_PASSWORD:-dbrepo}" --silent
-      interval: 10s
-      timeout: 5s
-      retries: 12
-    logging:
-      driver: json-file
-
   dbrepo-auth-db:
     restart: "no"
     container_name: dbrepo-auth-db