diff --git a/aleksis/core/util/manage.py b/aleksis/core/util/manage.py
new file mode 100644
index 0000000000000000000000000000000000000000..64441f62dfdadbb589b973dcd65633e100bf647b
--- /dev/null
+++ b/aleksis/core/util/manage.py
@@ -0,0 +1,12 @@
+"""Management utilities for an AlekSIS installation."""
+
+import os
+import sys
+
+from django.core.management import execute_from_command_line
+
+
+def aleksis_cmd():
+    """Run django-admin command with correct settings path."""
+    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "aleksis.core.settings")
+    execute_from_command_line(sys.argv)
diff --git a/pyproject.toml b/pyproject.toml
index c0df6916b5e987cc3ec19bd1e03ddcfb567bda76..cfb02aa3649f591f00fac32004c0a397e43a09ab 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -101,6 +101,9 @@ celery = ["Celery", "django-celery-results", "django-celery-beat", "django-celer
 [tool.poetry.dev-dependencies]
 aleksis-builddeps = "*"
 
+[tool.poetry.scripts]
+aleksis-admin = 'aleksis.core.util.manage:aleksis_cmd'
+
 [tool.black]
 line-length = 100
 exclude = "/migrations/"