diff --git a/docs/source/Dockerfile.luadoc b/docs/source/Dockerfile.luadoc
deleted file mode 100644
index 4917a0a738..0000000000
--- a/docs/source/Dockerfile.luadoc
+++ /dev/null
@@ -1,31 +0,0 @@
-FROM ubuntu:22.04
-
-RUN apt update && \
-    apt install -y make gcc libreadline-dev wget unzip git zip && \
-    rm -rf /var/lib/apt/lists/*
-
-ADD https://www.lua.org/ftp/lua-5.1.5.tar.gz /tmp/lua-5.1.5.tar.gz
-RUN tar -zxf /tmp/lua-5.1.5.tar.gz -C /tmp && rm /tmp/lua-5.1.5.tar.gz
-RUN cd /tmp/lua-5.1.5 && \
-    make linux -j $(nproc) && \
-    make install && \
-    rm -r /tmp/lua-5.1.5
-
-ADD https://luarocks.org/releases/luarocks-2.4.2.tar.gz /tmp/luarocks-2.4.2.tar.gz
-RUN tar -zxpf /tmp/luarocks-2.4.2.tar.gz -C /tmp && rm /tmp/luarocks-2.4.2.tar.gz
-RUN cd /tmp/luarocks-2.4.2 && \
-    ./configure && \
-    make build -j $(nproc) && \
-    make install && \
-    rm -r /tmp/luarocks-2.4.2
-
-ADD https://gitlab.com/ptmikheev/openmw-luadocumentor/-/raw/master/luarocks/openmwluadocumentor-0.1.1-1.rockspec /tmp/openmwluadocumentor-0.1.1-1.rockspec
-RUN cd /tmp && \
-    luarocks pack openmwluadocumentor-0.1.1-1.rockspec && \
-    luarocks install openmwluadocumentor-0.1.1-1.src.rock && \
-    rm /tmp/openmwluadocumentor-0.1.1-1.rockspec /tmp/openmwluadocumentor-0.1.1-1.src.rock
-
-VOLUME /openmw
-
-ENV DOCS_SOURCE_DIR=/openmw/docs/source
-ENV DOCUMENTOR_PATH=/usr/local/bin/openmwluadocumentor
diff --git a/docs/source/README.md b/docs/source/README.md
deleted file mode 100644
index a01803951e..0000000000
--- a/docs/source/README.md
+++ /dev/null
@@ -1,18 +0,0 @@
-# Source files for OpenMW documentation
-
-## Generating Lua scripting API reference
-
-### Building Docker image
-
-Run following command from OpenMW source directory to build a new Docker image `openmw.luadoc`:
-```bash
-docker build -f docs/source/Dockerfile.luadoc -t openmw.luadoc docs/source
-```
-
-### Generating HTML
-
-Run following command from OpenMW source directory to generate HTML pages:
-```bash
-docker run --rm --tty --interactive --user "$(id -u)":"$(id -g)" \
-    --volume "${PWD}":/openmw openmw.luadoc /openmw/docs/source/generate_luadoc.sh
-```
diff --git a/docs/source/conf.py b/docs/source/conf.py
index 7fe1262eda..7f2affbb75 100644
--- a/docs/source/conf.py
+++ b/docs/source/conf.py
@@ -151,11 +151,7 @@ def setup(app):
     app.add_stylesheet('figures.css')
     app.add_stylesheet('luadoc.css')
     try:
-        # Assume we need to setup openmw-luadocumentor only when running this script in a Docker container because
-        # readthedocs pipeline runs there.
-        if os.path.exists('/.dockerenv'):
-            subprocess.check_call(os.path.join(project_root, 'docs/source/setup_openmw_luadocumentor.sh'))
-        subprocess.check_call(os.path.join(project_root, 'docs/source/generate_luadoc.sh'))
+        subprocess.call(project_root + '/docs/source/generate_luadoc.sh')
     except Exception as e:
         print('Can\'t generate Lua API documentation:', e)
 
diff --git a/docs/source/generate_luadoc.sh b/docs/source/generate_luadoc.sh
index 4f0cb4b947..f71e3110cb 100755
--- a/docs/source/generate_luadoc.sh
+++ b/docs/source/generate_luadoc.sh
@@ -1,4 +1,4 @@
-#!/bin/bash -e
+#!/bin/bash
 
 # How to install openmwluadocumentor:
 
@@ -20,31 +20,52 @@
 # open "Git Bash" in the same directory and run script:
 #   ./generate_luadoc.sh
 
-if [[ -z "${DOCS_SOURCE_DIR+x}" ]]; then
-    DOCS_SOURCE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
+if [ -f /.dockerenv ]; then
+    # We are inside readthedocs pipeline
+    echo "Install lua 5.1"
+    cd ~
+    curl -R -O https://www.lua.org/ftp/lua-5.1.5.tar.gz
+    tar -zxf lua-5.1.5.tar.gz
+    cd lua-5.1.5/
+    make linux
+    PATH=$PATH:~/lua-5.1.5/src
+
+    echo "Install luarocks"
+    cd ~
+    wget https://luarocks.org/releases/luarocks-2.4.2.tar.gz
+    tar zxpf luarocks-2.4.2.tar.gz
+    cd luarocks-2.4.2/
+    ./configure --with-lua-bin=$HOME/lua-5.1.5/src --with-lua-include=$HOME/lua-5.1.5/src --prefix=$HOME/luarocks
+    make build
+    make install
+    PATH=$PATH:~/luarocks/bin
+
+    echo "Install openmwluadocumentor"
+    cd ~
+    git clone https://gitlab.com/ptmikheev/openmw-luadocumentor.git
+    cd openmw-luadocumentor/luarocks
+    luarocks --local pack openmwluadocumentor-0.1.1-1.rockspec
+    luarocks --local install openmwluadocumentor-0.1.1-1.src.rock
 fi
 
-FILES_DIR="${DOCS_SOURCE_DIR:?}/../../files"
-OUTPUT_DIR="${DOCS_SOURCE_DIR:?}/reference/lua-scripting/generated_html"
+DOCS_SOURCE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
+FILES_DIR=$DOCS_SOURCE_DIR/../../files
+OUTPUT_DIR=$DOCS_SOURCE_DIR/reference/lua-scripting/generated_html
+DOCUMENTOR_PATH=~/.luarocks/bin/openmwluadocumentor
 
-if [[ -z "${DOCUMENTOR_PATH+x}" ]]; then
-    DOCUMENTOR_PATH=~/.luarocks/bin/openmwluadocumentor
+if [ ! -x $DOCUMENTOR_PATH ]; then
+  # running on Windows?
+  DOCUMENTOR_PATH="$APPDATA/LuaRocks/bin/openmwluadocumentor.bat"
 fi
 
-if [ ! -x "${DOCUMENTOR_PATH:?}" ]; then
-    # running on Windows?
-    DOCUMENTOR_PATH="${APPDATA:?}/LuaRocks/bin/openmwluadocumentor.bat"
-fi
+rm -f $OUTPUT_DIR/*.html
 
-rm -rf "${OUTPUT_DIR:?}"
-mkdir "${OUTPUT_DIR:?}"
+cd $FILES_DIR/lua_api
+$DOCUMENTOR_PATH -f doc -d $OUTPUT_DIR openmw/*lua
 
-cd "${FILES_DIR:?}/lua_api"
-"${DOCUMENTOR_PATH:?}" -f doc -d "${OUTPUT_DIR:?}" openmw/*lua
-
-cd "${FILES_DIR:?}/data"
-"${DOCUMENTOR_PATH:?}" -f doc -d "${OUTPUT_DIR:?}" openmw_aux/*lua
-"${DOCUMENTOR_PATH:?}" -f doc -d "${OUTPUT_DIR:?}" scripts/omw/ai.lua
-"${DOCUMENTOR_PATH:?}" -f doc -d "${OUTPUT_DIR:?}" scripts/omw/camera/camera.lua
-"${DOCUMENTOR_PATH:?}" -f doc -d "${OUTPUT_DIR:?}" scripts/omw/mwui/init.lua
-"${DOCUMENTOR_PATH:?}" -f doc -d "${OUTPUT_DIR:?}" scripts/omw/settings/player.lua
+cd $FILES_DIR/data
+$DOCUMENTOR_PATH -f doc -d $OUTPUT_DIR openmw_aux/*lua
+$DOCUMENTOR_PATH -f doc -d $OUTPUT_DIR scripts/omw/ai.lua
+$DOCUMENTOR_PATH -f doc -d $OUTPUT_DIR scripts/omw/camera/camera.lua
+$DOCUMENTOR_PATH -f doc -d $OUTPUT_DIR scripts/omw/mwui/init.lua
+$DOCUMENTOR_PATH -f doc -d $OUTPUT_DIR scripts/omw/settings/player.lua
diff --git a/docs/source/setup_openmw_luadocumentor.sh b/docs/source/setup_openmw_luadocumentor.sh
deleted file mode 100755
index 5e7ec045fb..0000000000
--- a/docs/source/setup_openmw_luadocumentor.sh
+++ /dev/null
@@ -1,26 +0,0 @@
-#!/bin/bash -e
-
-echo "Install lua 5.1"
-cd ~
-curl -R -O https://www.lua.org/ftp/lua-5.1.5.tar.gz
-tar -zxf lua-5.1.5.tar.gz
-cd lua-5.1.5/
-make -j $(nproc) linux
-PATH="${PATH:?}:~/lua-5.1.5/src"
-
-echo "Install luarocks"
-cd ~
-wget https://luarocks.org/releases/luarocks-2.4.2.tar.gz
-tar zxpf luarocks-2.4.2.tar.gz
-cd luarocks-2.4.2/
-./configure --with-lua-bin="${HOME:?}/lua-5.1.5/src" --with-lua-include="${HOME:?}/lua-5.1.5/src" --prefix="${HOME:?}/luarocks"
-make -j $(nproc) build
-make -j $(nproc) install
-PATH="${PATH:?}:~/luarocks/bin"
-
-echo "Install openmwluadocumentor"
-cd ~
-git clone --depth 1 https://gitlab.com/ptmikheev/openmw-luadocumentor.git
-cd openmw-luadocumentor/luarocks
-luarocks --local pack openmwluadocumentor-0.1.1-1.rockspec
-luarocks --local install openmwluadocumentor-0.1.1-1.src.rock