aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Sturmfels <ben@sturm.com.au>2021-08-15 23:10:29 +1000
committerBen Sturmfels <ben@sturm.com.au>2021-08-15 23:10:29 +1000
commit550202bf0a0a0962fe55f8a0022e10503323927f (patch)
treee052e96e11ae5c722a372554d124b405d8e45159
parent5469c9daa6e9fa3865d132d75c43545d5783d8f1 (diff)
downloadmediagoblin-550202bf0a0a0962fe55f8a0022e10503323927f.tar.lz
mediagoblin-550202bf0a0a0962fe55f8a0022e10503323927f.tar.xz
mediagoblin-550202bf0a0a0962fe55f8a0022e10503323927f.zip
Document running multiple MediaGoblin instances on one server.
-rw-r--r--docs/source/siteadmin/production-deployments.rst25
-rw-r--r--docs/source/siteadmin/relnotes.rst1
-rw-r--r--mediagoblin.example.ini4
3 files changed, 24 insertions, 6 deletions
diff --git a/docs/source/siteadmin/production-deployments.rst b/docs/source/siteadmin/production-deployments.rst
index 2a78f479..52563e6e 100644
--- a/docs/source/siteadmin/production-deployments.rst
+++ b/docs/source/siteadmin/production-deployments.rst
@@ -107,7 +107,24 @@ documentation.
.. _`raven`: http://raven.readthedocs.org
-.. TODO insert init script here
-.. TODO are additional concerns ?
- .. Other Concerns
- .. --------------
+Running multiple MediaGoblin instances on the same server
+---------------------------------------------------------
+
+It is possible to run multiple separate MediaGoblin instances concurrently on
+the same server. We don't provide detailed instructions to do this, but broadly,
+each instance will need:
+
+1. A separate ``mediagoblin.ini`` and ``paste.ini``.
+2. A separate database that is configured in ``mediagoblin.ini``.
+3. A unique ``CELERY_DEFAULT_QUEUE`` configured in ``mediagoblin.ini``. Queues
+ are automatically created, but must be unique between MediaGoblin instances.
+4. A separate data directory created and configured in ``mediagoblin.ini`` and
+ ``paste.ini``.
+5. A unique server port configured in ``paste.ini`` under ``[server:broadcast]``.
+
+You would typically configure the web server to route requests to the
+appropriate MediaGoblin instance port based on the requested domain name or
+something similar.
+
+It is also possible to share the same MediaGoblin codebase and Python virtualenv
+between multiple instances, so long as they have a unique data directory.
diff --git a/docs/source/siteadmin/relnotes.rst b/docs/source/siteadmin/relnotes.rst
index 390143a3..ee4b452f 100644
--- a/docs/source/siteadmin/relnotes.rst
+++ b/docs/source/siteadmin/relnotes.rst
@@ -39,6 +39,7 @@ This chapter has important information about our current and previous releases.
- Remove references to previous `tinymce` JS dependency (Ben Sturmfels)
- Remove plugin for decommissioned Mozilla Persona (Jgart)
- Remove Debian 10 development Dockerfile (BenSturmfels)
+- Document running multiple MediaGoblin instances on one server (Ben Sturmfels)
**Bug fixes:**
diff --git a/mediagoblin.example.ini b/mediagoblin.example.ini
index 6648fb91..b1769e2d 100644
--- a/mediagoblin.example.ini
+++ b/mediagoblin.example.ini
@@ -9,7 +9,7 @@
# directory in paste.ini and/or your webserver configuration.
#
# [DEFAULT]
-# data_basedir = "/var/lib/mediagoblin"
+# data_basedir = %(here)s/user_dev
[mediagoblin]
direct_remote_path = /mgoblin_static/
@@ -61,7 +61,7 @@ base_dir = %(data_basedir)s/media/public
base_url = /mgoblin_media/
[celery]
-# Put celery stuff here
+# CELERY_DEFAULT_QUEUE = "default"
# Place plugins here, each in their own subsection of [plugins].
# See http://docs.mediagoblin.org/siteadmin/plugins.html for details.