diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d9d7e804c6be4c03216398d9b83375f4e8b0affc..b9667f1c75a2c720cb95283d60ad332ecfb19f3b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,7 +3,9 @@ variables:
     GIT_STRATEGY: clone
     BASE_IMAGE: webpage:base
     LINTER_IMAGE: webpage:linter
-    LINKCHECKER_IMAGE: webpage:linkchecker
+    LINKCHECKER_IMAGE: linkchecker
+    TEST_NETWORK: testnet
+    TEST_CONTAINER_NAME: webpage
 
 stages:
     - build
@@ -29,3 +31,11 @@ test_linter:
     script:
         - docker run --rm ${LINTER_IMAGE} --config /src/linter/config.json /src/doc.zih.tu-dresden.de/docs
 
+test_linkchecker:
+    stage: test
+    script:
+        - docker network create ${TEST_NETWORK}
+        - docker run -d --rm --name ${TEST_CONTAINER_NAME} --network ${TEST_NETWORK} ${BASE_IMAGE} mkdocs serve --dev-addr 0.0.0.0:8000
+        - docker run --rm ${LINKCHECKER_IMAGE} --check-extern --ignore-url=http://0.0.0.0:8000 http://webpage:8000
+        - docker stop ${TEST_CONTAINER_NAME}
+        - docker network rm ${TEST_NETWORK}
diff --git a/linkchecker/Dockerfile b/linkchecker/Dockerfile
index 9badeb1738aee9d30fc4f3d8085b7dbb728808c0..5fa5ae88233b5447414c1bc624c24ae95b8c2d2c 100644
--- a/linkchecker/Dockerfile
+++ b/linkchecker/Dockerfile
@@ -1,12 +1,14 @@
-FROM webpage:base
+FROM debian:buster
 
 ###############
 # Linkchecker #
 ###############
 
-RUN apt update && apt install -y nodejs npm
-
-RUN npm install -g markdown-link-check
+RUN apt update && apt install -y linkchecker
 
 WORKDIR /src/linkchecker
 
+ENTRYPOINT ["/usr/bin/linkchecker"]
+
+CMD ["--help"]
+