docs: make all configs match

This commit is contained in:
Timo Kösters 2022-02-12 10:29:04 +01:00 committed by Jonas Zohren
parent c66866d890
commit de6c3312ce
No known key found for this signature in database
GPG key ID: FE3ED5D90A175463
7 changed files with 76 additions and 86 deletions

View file

@ -93,24 +93,30 @@ to read it. You need to change at least the server name.**
```toml ```toml
[global] [global]
# The server_name is the name of this server. It is used as a suffix for user # The server_name is the pretty name of this server. It is used as a suffix for user
# and room ids. Examples: matrix.org, conduit.rs # and room ids. Examples: matrix.org, conduit.rs
# The Conduit server needs to be reachable at https://your.server.name/ on port
# 443 (client-server) and 8448 (federation) OR you can create /.well-known # The Conduit server needs all /_matrix/ requests to be reachable at
# files to redirect requests. See # https://your.server.name/ on port 443 (client-server) and 8448 (federation).
# If that's not possible for you, you can create /.well-known files to redirect
# requests. See
# https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client # https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client
# and https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server # and
# https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server
# for more information # for more information
# YOU NEED TO EDIT THIS # YOU NEED TO EDIT THIS
#server_name = "your.server.name" #server_name = "your.server.name"
# This is the only directory where Conduit will save its data # This is the only directory where Conduit will save its data
database_path = "/var/lib/matrix-conduit/conduit_db" database_path = "/var/lib/matrix-conduit/"
database_backend = "rocksdb"
# The port Conduit will be running on. You need to set up a reverse proxy in # The port Conduit will be running on. You need to set up a reverse proxy in
# your web server (e.g. apache or nginx), so all requests to /_matrix on port # your web server (e.g. apache or nginx), so all requests to /_matrix on port
# 443 and 8448 will be forwarded to the Conduit instance running on this port # 443 and 8448 will be forwarded to the Conduit instance running on this port
# Docker users: Don't change this, you'll need to map an external port to this.
port = 6167 port = 6167
# Max size for uploads # Max size for uploads
@ -119,20 +125,15 @@ max_request_size = 20_000_000 # in bytes
# Enables registration. If set to false, no users can register on this server. # Enables registration. If set to false, no users can register on this server.
allow_registration = true allow_registration = true
# Disable encryption, so no new encrypted rooms can be created
# Note: existing rooms will continue to work
allow_encryption = true
allow_federation = true allow_federation = true
trusted_servers = ["matrix.org"] trusted_servers = ["matrix.org"]
#max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time #max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time
#workers = 4 # default: cpu core count * 2 #log = "info,state_res=warn,rocket=off,_=off,sled=off"
address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy
#address = "0.0.0.0" # If Conduit is running in a container, make sure the reverse proxy (ie. Traefik) can reach it.
# The total amount of memory that the database will use.
#db_cache_capacity_mb = 200
``` ```
## Setting the correct file permissions ## Setting the correct file permissions

View file

@ -35,9 +35,18 @@ FROM docker.io/debian:bullseye-slim AS runner
# You still need to map the port when using the docker command or docker-compose. # You still need to map the port when using the docker command or docker-compose.
EXPOSE 6167 EXPOSE 6167
# Note from @jfowl: I would like to remove the config file in the future and just have the Docker version be configured with envs. ENV CONDUIT_SERVER_NAME=your.server.name # EDIT THIS
ENV CONDUIT_CONFIG="/srv/conduit/conduit.toml" \ ENV CONDUIT_DATABASE_PATH=/var/lib/matrix-conduit
CONDUIT_PORT=6167 ENV CONDUIT_DATABASE_BACKEND=rocksdb
ENV CONDUIT_PORT=6167
ENV CONDUIT_MAX_REQUEST_SIZE=20_000_000 # in bytes, ~20 MB
ENV CONDUIT_ALLOW_REGISTRATION=true
ENV CONDUIT_ALLOW_FEDERATION=true
ENV CONDUIT_TRUSTED_SERVERS=["matrix.org"]
#ENV CONDUIT_MAX_CONCURRENT_REQUESTS=100
#ENV CONDUIT_LOG=info,rocket=off,_=off,sled=off
ENV CONDUIT_ADDRESS=0.0.0.0
ENV CONDUIT_CONFIG='' # Ignore this
# Conduit needs: # Conduit needs:
# ca-certificates: for https # ca-certificates: for https

View file

@ -16,7 +16,7 @@
#server_name = "your.server.name" #server_name = "your.server.name"
# This is the only directory where Conduit will save its data # This is the only directory where Conduit will save its data
database_path = "/var/lib/conduit/" database_path = "/var/lib/matrix-conduit/"
database_backend = "rocksdb" database_backend = "rocksdb"
# The port Conduit will be running on. You need to set up a reverse proxy in # The port Conduit will be running on. You need to set up a reverse proxy in
@ -31,24 +31,12 @@ max_request_size = 20_000_000 # in bytes
# Enables registration. If set to false, no users can register on this server. # Enables registration. If set to false, no users can register on this server.
allow_registration = true allow_registration = true
# Disable encryption, so no new encrypted rooms can be created allow_federation = true
# Note: existing rooms will continue to work
#allow_encryption = false
#allow_federation = false
# Enable jaeger to support monitoring and troubleshooting through jaeger
#allow_jaeger = false
trusted_servers = ["matrix.org"] trusted_servers = ["matrix.org"]
#max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time #max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time
#log = "info,state_res=warn,_=off,sled=off" #log = "info,state_res=warn,rocket=off,_=off,sled=off"
#workers = 4 # default: cpu core count * 2
address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy
#address = "0.0.0.0" # If Conduit is running in a container, make sure the reverse proxy (ie. Traefik) can reach it. #address = "0.0.0.0" # If Conduit is running in a container, make sure the reverse proxy (ie. Traefik) can reach it.
proxy = "none" # more examples can be found at src/database/proxy.rs:6
# The total amount of memory that the database will use.
#db_cache_capacity_mb = 200

38
debian/postinst vendored
View file

@ -36,18 +36,24 @@ case "$1" in
mkdir -p "$CONDUIT_CONFIG_PATH" mkdir -p "$CONDUIT_CONFIG_PATH"
cat > "$CONDUIT_CONFIG_FILE" << EOF cat > "$CONDUIT_CONFIG_FILE" << EOF
[global] [global]
# The server_name is the name of this server. It is used as a suffix for user # The server_name is the pretty name of this server. It is used as a suffix for
# and room ids. Examples: matrix.org, conduit.rs # user and room ids. Examples: matrix.org, conduit.rs
# The Conduit server needs to be reachable at https://your.server.name/ on port
# 443 (client-server) and 8448 (federation) OR you can create /.well-known # The Conduit server needs all /_matrix/ requests to be reachable at
# files to redirect requests. See # https://your.server.name/ on port 443 (client-server) and 8448 (federation).
# If that's not possible for you, you can create /.well-known files to redirect
# requests. See
# https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client # https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client
# and https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server # and
# for more information. # https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server
# for more information
server_name = "${CONDUIT_SERVER_NAME}" server_name = "${CONDUIT_SERVER_NAME}"
# This is the only directory where Conduit will save its data. # This is the only directory where Conduit will save its data.
database_path = "${CONDUIT_DATABASE_PATH}" database_path = "${CONDUIT_DATABASE_PATH}"
database_backend = "rocksdb"
# The address Conduit will be listening on. # The address Conduit will be listening on.
# By default the server listens on address 0.0.0.0. Change this to 127.0.0.1 to # By default the server listens on address 0.0.0.0. Change this to 127.0.0.1 to
@ -56,7 +62,8 @@ address = "${CONDUIT_ADDRESS}"
# The port Conduit will be running on. You need to set up a reverse proxy in # The port Conduit will be running on. You need to set up a reverse proxy in
# your web server (e.g. apache or nginx), so all requests to /_matrix on port # your web server (e.g. apache or nginx), so all requests to /_matrix on port
# 443 and 8448 will be forwarded to the Conduit instance running on this port. # 443 and 8448 will be forwarded to the Conduit instance running on this port
# Docker users: Don't change this, you'll need to map an external port to this.
port = ${CONDUIT_PORT} port = ${CONDUIT_PORT}
# Max size for uploads # Max size for uploads
@ -65,20 +72,15 @@ max_request_size = 20_000_000 # in bytes
# Enables registration. If set to false, no users can register on this server. # Enables registration. If set to false, no users can register on this server.
allow_registration = true allow_registration = true
# Disable encryption, so no new encrypted rooms can be created. allow_federation = true
# Note: Existing rooms will continue to work.
#allow_encryption = false
#allow_federation = false
# Enable jaeger to support monitoring and troubleshooting through jaeger. trusted_servers = ["matrix.org"]
#allow_jaeger = false
#max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time #max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time
#log = "info,state_res=warn,_=off,sled=off" #log = "info,state_res=warn,rocket=off,_=off,sled=off"
#workers = 4 # default: cpu core count * 2
# The total amount of memory that the database will use. address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy
#db_cache_capacity_mb = 200 #address = "0.0.0.0" # If Conduit is running in a container, make sure the reverse proxy (ie. Traefik) can reach it.
EOF EOF
fi fi
;; ;;

View file

@ -20,27 +20,24 @@ services:
ports: ports:
- 8448:6167 - 8448:6167
volumes: volumes:
- db:/srv/conduit/.local/share/conduit - db:/var/lib/matrix-conduit/
### Uncomment if you want to use conduit.toml to configure Conduit ### Uncomment if you want to use conduit.toml to configure Conduit
### Note: Set env vars will override conduit.toml values ### Note: Set env vars will override conduit.toml values
# - ./conduit.toml:/srv/conduit/conduit.toml # - ./conduit.toml:/srv/conduit/conduit.toml
environment: environment:
CONDUIT_SERVER_NAME: localhost:6167 # replace with your own name CONDUIT_SERVER_NAME: your.server.name # EDIT THIS
CONDUIT_TRUSTED_SERVERS: '["matrix.org"]' CONDUIT_DATABASE_PATH: /var/lib/matrix-conduit/
CONDUIT_DATABASE_BACKEND: rocksdb
CONDUIT_PORT: 6167
CONDUIT_MAX_REQUEST_SIZE: 20_000_000 # in bytes, ~20 MB
CONDUIT_ALLOW_REGISTRATION: 'true' CONDUIT_ALLOW_REGISTRATION: 'true'
### Uncomment and change values as desired CONDUIT_ALLOW_FEDERATION: 'true'
# CONDUIT_ADDRESS: 0.0.0.0 CONDUIT_TRUSTED_SERVERS: '["matrix.org"]'
# CONDUIT_PORT: 6167 #CONDUIT_MAX_CONCURRENT_REQUESTS: 100
# CONDUIT_CONFIG: '/srv/conduit/conduit.toml' # if you want to configure purely by env vars, set this to an empty string '' #CONDUIT_LOG: info,rocket=off,_=off,sled=off
# Available levels are: error, warn, info, debug, trace - more info at: https://docs.rs/env_logger/*/env_logger/#enabling-logging CONDUIT_ADDRESS: 0.0.0.0
# CONDUIT_LOG: info # default is: "info,_=off,sled=off" CONDUIT_CONFIG: '' # Ignore this
# CONDUIT_ALLOW_JAEGER: 'false' #
# CONDUIT_ALLOW_ENCRYPTION: 'false'
# CONDUIT_ALLOW_FEDERATION: 'false'
# CONDUIT_DATABASE_PATH: /srv/conduit/.local/share/conduit
# CONDUIT_WORKERS: 10
# CONDUIT_MAX_REQUEST_SIZE: 20_000_000 # in bytes, ~20 MB
### Uncomment if you want to use your own Element-Web App. ### Uncomment if you want to use your own Element-Web App.
### Note: You need to provide a config.json for Element and you also need a second ### Note: You need to provide a config.json for Element and you also need a second
### Domain or Subdomain for the communication between Element and Conduit ### Domain or Subdomain for the communication between Element and Conduit

View file

@ -112,4 +112,4 @@ So...step by step:
``` ```
6. Run `docker-compose up -d` 6. Run `docker-compose up -d`
7. Connect to your homeserver with your preferred client and create a user. You should do this immediatly after starting Conduit, because the first created user is the admin. 7. Connect to your homeserver with your preferred client and create a user. You should do this immediately after starting Conduit, because the first created user is the admin.

View file

@ -18,28 +18,22 @@ services:
# GIT_REF: origin/master # GIT_REF: origin/master
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- db:/srv/conduit/.local/share/conduit - db:/var/lib/matrix-conduit/
### Uncomment if you want to use conduit.toml to configure Conduit
### Note: Set env vars will override conduit.toml values
# - ./conduit.toml:/srv/conduit/conduit.toml
networks: networks:
- proxy - proxy
environment: environment:
CONDUIT_SERVER_NAME: localhost:6167 # replace with your own name CONDUIT_SERVER_NAME: your.server.name # EDIT THIS
CONDUIT_TRUSTED_SERVERS: '["matrix.org"]' CONDUIT_DATABASE_PATH: /var/lib/matrix-conduit/
CONDUIT_DATABASE_BACKEND: rocksdb
CONDUIT_PORT: 6167
CONDUIT_MAX_REQUEST_SIZE: 20_000_000 # in bytes, ~20 MB
CONDUIT_ALLOW_REGISTRATION: 'true' CONDUIT_ALLOW_REGISTRATION: 'true'
### Uncomment and change values as desired CONDUIT_ALLOW_FEDERATION: 'true'
# CONDUIT_ADDRESS: 0.0.0.0 CONDUIT_TRUSTED_SERVERS: '["matrix.org"]'
# CONDUIT_PORT: 6167 #CONDUIT_MAX_CONCURRENT_REQUESTS: 100
# CONDUIT_CONFIG: '/srv/conduit/conduit.toml' # if you want to configure purely by env vars, set this to an empty string '' #CONDUIT_LOG: info,rocket=off,_=off,sled=off
# Available levels are: error, warn, info, debug, trace - more info at: https://docs.rs/env_logger/*/env_logger/#enabling-logging CONDUIT_ADDRESS: 0.0.0.0
# CONDUIT_LOG: info # default is: "info,_=off,sled=off" CONDUIT_CONFIG: '' # Ignore this
# CONDUIT_ALLOW_JAEGER: 'false'
# CONDUIT_ALLOW_ENCRYPTION: 'false'
# CONDUIT_ALLOW_FEDERATION: 'false'
# CONDUIT_DATABASE_PATH: /srv/conduit/.local/share/conduit
# CONDUIT_WORKERS: 10
# CONDUIT_MAX_REQUEST_SIZE: 20_000_000 # in bytes, ~20 MB
# We need some way to server the client and server .well-known json. The simplest way is to use a nginx container # We need some way to server the client and server .well-known json. The simplest way is to use a nginx container
# to serve those two as static files. If you want to use a different way, delete or comment the below service, here # to serve those two as static files. If you want to use a different way, delete or comment the below service, here
@ -50,7 +44,6 @@ services:
volumes: volumes:
- ./nginx/matrix.conf:/etc/nginx/conf.d/matrix.conf # the config to serve the .well-known/matrix files - ./nginx/matrix.conf:/etc/nginx/conf.d/matrix.conf # the config to serve the .well-known/matrix files
- ./nginx/www:/var/www/ # location of the client and server .well-known-files - ./nginx/www:/var/www/ # location of the client and server .well-known-files
### Uncomment if you want to use your own Element-Web App. ### Uncomment if you want to use your own Element-Web App.
### Note: You need to provide a config.json for Element and you also need a second ### Note: You need to provide a config.json for Element and you also need a second
### Domain or Subdomain for the communication between Element and Conduit ### Domain or Subdomain for the communication between Element and Conduit