This repository contains a Docker image for Dimension.
Dimension is "an open source integrations manager for matrix clients, like Riot".
Visit the Dimension website and GitHub repo for more information.
docker run -d -p 8184:8184 -e HOME_NAME=my.matrix.domain -e ADMIN_LIST=@me:my.matrix.domain kapdap/matrix-dimension
A production.yaml
and admin token are generated on every run. Use a volume to persists these values.
docker run -d -p 8184:8184 -e HOME_NAME=my.matrix.domain -e ADMIN_LIST=@me:my.matrix.domain -v /path/to/config:/app/config kapdap/matrix-dimension
The admin token is printed to console log whenever a new one is generated. Set the environment variable HOME_ACCESS_TOKEN=secret-token
or HOME_ACCESS_TOKEN_FILE=/run/secrets/token
to use a fixed secret.
See default.yaml on the Dimension GitHub repo for a full explaination of the configuration values.
This image can be configured using environment variables or by providing a production.yaml
file at /app/config/production.yaml
.
Setting GENERATE_CONFIG=true
will overwrite an existing production.yaml
. This is useful if you want to provide a volume and keep production.yaml
updated using env vars. production.yaml
will always be generated if one cannot be found.
See env.sample
for a full list of configurable environment variables.
Note: The production.yaml
file name is set from the NODE_ENV
environment variable.
If HOME_ACCESS_TOKEN_FILE
and HOME_ACCESS_TOKEN
are unset a new token will be generated and saved to /app/config/secret
. Tokens can be retreived from docker logs whenever a new one is generated.
docker logs -f <container-id>
Generating config /app/config/production.yaml
HOME_ACCESS_TOKEN_FILE and HOME_ACCESS_TOKEN are unset. A random access token will be generated and saved to /app/config/secret.
Provide a docker volume to persist this token across restarts. Tokens are printed to the console each time they are generated.
Z1BIYjR0WGQ3eWdNZDROYmFDZkJZQ3Bqbm01UmFndTk=
Tokens are used only when a new production.yaml
is generated or GENERATE_CONFIG=true
.
Finally, remember to set the ADMIN_LIST
value to your Matrix Admin ID e.g. @bob:my.matrix.domain,@jane:my.matrix.domain
.
Clone the repo:
git clone https://github.com/kapdap/docker-matrix-dimension.git && cd docker-matrix-dimension
Build the Docker image:
docker-compose build
docker-compose up
You can change the git branch and commit by setting the GIT_BRANCH
and GIT_COMMIT
build arguments.