diff --git a/docker/README.md b/docker/README.md
index 5c85c538a8..a42d1d24b6 100644
--- a/docker/README.md
+++ b/docker/README.md
@@ -186,6 +186,8 @@ The following environment variables are supported in this mode:
* `SYNAPSE_REPORT_STATS` (mandatory, `yes` or `no`): whether to enable
anonymous statistics reporting.
* `SYNAPSE_CONFIG_PATH` (mandatory): path to the file to be generated.
+* `SYNAPSE_CONFIG_DIR`: where additional config files (such as the log config
+ and event signing key) will be stored. Defaults to `/data`.
* `SYNAPSE_DATA_DIR`: where the generated config will put persistent data
such as the datatase and media store. Defaults to `/data`.
* `UID`, `GID`: the user id and group id to use for creating the data
diff --git a/docker/start.py b/docker/start.py
index ad968b2a67..99107a9d54 100755
--- a/docker/start.py
+++ b/docker/start.py
@@ -116,6 +116,7 @@ def run_generate_config(environ, ownership):
if v not in environ:
error("Environment variable '%s' is mandatory in `generate` mode." % (v,))
+ config_dir = environ.get("SYNAPSE_CONFIG_DIR", "/data")
data_dir = environ.get("SYNAPSE_DATA_DIR", "/data")
# make sure that synapse has perms to write to the data dir.
@@ -131,6 +132,8 @@ def run_generate_config(environ, ownership):
environ["SYNAPSE_REPORT_STATS"],
"--config-path",
environ["SYNAPSE_CONFIG_PATH"],
+ "--config-directory",
+ config_dir,
"--data-directory",
data_dir,
"--generate-config",
|