mirror of
https://github.com/spantaleev/matrix-docker-ansible-deploy.git
synced 2025-02-05 23:05:01 +01:00
Compare commits
8 Commits
992e58e71c
...
f401729bd7
Author | SHA1 | Date | |
---|---|---|---|
|
f401729bd7 | ||
|
da08975ca8 | ||
|
d528ab1822 | ||
|
313a01320b | ||
|
a9ceb57b4f | ||
|
687627ccd7 | ||
|
8a18cc946d | ||
|
5d76e8d7ec |
@ -1354,7 +1354,7 @@ Our [justfile](justfile) already defines some additional helpful **shortcut** co
|
||||
- `just run-tags install-mautrix-slack,start` - to run specific playbook tags
|
||||
- `just start-all` - (re-)starts all services
|
||||
- `just stop-group postgres` - to stop only the Postgres service
|
||||
- `just register-user john secret-password yes` - registers a `john` user with the `secret-password` password and admin access (admin = `yes`)
|
||||
- `just register-user alice secret-password yes` - registers an `alice` user with the `secret-password` password and admin access (admin = `yes`)
|
||||
|
||||
Additional helpful commands and shortcuts may be defined in the future.
|
||||
|
||||
|
@ -20,8 +20,8 @@ These users can modify the integrations this Dimension supports. Add this to you
|
||||
|
||||
```yaml
|
||||
matrix_dimension_admins:
|
||||
- "@user1:{{ matrix_domain }}"
|
||||
- "@user2:{{ matrix_domain }}"
|
||||
- "@alice:{{ matrix_domain }}"
|
||||
- "@bob:{{ matrix_domain }}"
|
||||
```
|
||||
|
||||
The admin interface is accessible within Element Web by accessing it in any room and clicking the cog wheel/settings icon in the top right. Currently, Dimension can be opened in Element Web by the "Add widgets, bridges, & bots" link in the room information.
|
||||
|
@ -121,6 +121,10 @@ Besides Synapse, you'd need other things - a Postgres database, likely the [Elem
|
||||
|
||||
Using the playbook, you get all these components in a way that works well together out of the box.
|
||||
|
||||
### Occasionally I see some people are talking about "MDAD". What is it?
|
||||
|
||||
It is the acronym of us: **m**atrix-**d**ocker-**a**nsible-**d**eploy.
|
||||
|
||||
### What's different about this Ansible playbook compared to [EMnify/matrix-synapse-auto-deploy](https://github.com/EMnify/matrix-synapse-auto-deploy)?
|
||||
|
||||
This is similar to the [EMnify/matrix-synapse-auto-deploy](https://github.com/EMnify/matrix-synapse-auto-deploy) Ansible deployment, but:
|
||||
@ -193,7 +197,7 @@ The only thing we need on the distro is systemd and Python (we install Docker ou
|
||||
|
||||
Instead of using [docker-compose](https://docs.docker.com/compose/), we prefer installing systemd services and scheduling those independently.
|
||||
|
||||
There are people who have worked on turning this setup into a docker-compose-based one. See these experiments [here](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/64#issuecomment-603164625).
|
||||
There are people who have worked on turning this setup into a docker-compose-based one. See these experiments [here](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/64#issuecomment-603164625). There is also a demo project ([element-docker-demo](https://github.com/element-hq/element-docker-demo)) by Element.
|
||||
|
||||
### Can I run this on a distro without systemd?
|
||||
|
||||
|
@ -83,13 +83,13 @@ To create your user account (as an administrator of the server) via this Ansible
|
||||
|
||||
**Notes**:
|
||||
- Make sure to adjust `YOUR_USERNAME_HERE` and `YOUR_PASSWORD_HERE`
|
||||
- For `YOUR_USERNAME_HERE`, use a plain username like `john`, not your full identifier (`@user:example.com`)
|
||||
- For `YOUR_USERNAME_HERE`, use a plain username like `alice`, not your full identifier (`@alice:example.com`)
|
||||
- Use `admin=yes` to make your user account an administrator of the Matrix server
|
||||
|
||||
```sh
|
||||
ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=YOUR_USERNAME_HERE password=YOUR_PASSWORD_HERE admin=yes' --tags=register-user
|
||||
|
||||
# Example: ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=john password=secret-password admin=yes' --tags=register-user
|
||||
# Example: ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=alice password=secret-password admin=yes' --tags=register-user
|
||||
```
|
||||
|
||||
Feel free to create as many accounts (for friends, family, etc.) as you want. Still, perhaps you should grant full administrative access to your account only (with `admin=yes`), and others should be created with `admin=no`.
|
||||
|
24
docs/just.md
24
docs/just.md
@ -10,18 +10,18 @@ For some recipes such as `just update`, our `justfile` recommends installing [`a
|
||||
|
||||
Here are some examples of shortcuts:
|
||||
|
||||
| Shortcut | Result |
|
||||
|-----------------------------------------------|----------------------------------------------------------------------------------------------------------------|
|
||||
| `just roles` | Install the necessary Ansible roles pinned in [`requirements.yml`](../requirements.yml) |
|
||||
| `just update` | Run `git pull` (to update the playbook) and install the Ansible roles |
|
||||
| `just install-all` | Run `ansible-playbook -i inventory/hosts setup.yml --tags=install-all,ensure-matrix-users-created,start` |
|
||||
| `just setup-all` | Run `ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-users-created,start` |
|
||||
| `just install-all --ask-vault-pass` | Run commands with additional arguments (`--ask-vault-pass` will be appended to the above installation command) |
|
||||
| `just run-tags install-mautrix-slack,start` | Run specific playbook tags (here `install-mautrix-slack` and `start`) |
|
||||
| `just install-service mautrix-slack` | Run `just run-tags install-mautrix-slack,start` with even less typing |
|
||||
| `just start-all` | (Re-)starts all services |
|
||||
| `just stop-group postgres` | Stop only the Postgres service |
|
||||
| `just register-user john secret-password yes` | Registers a `john` user with the `secret-password` password and admin access (admin = `yes`) |
|
||||
| Shortcut | Result |
|
||||
|------------------------------------------------|----------------------------------------------------------------------------------------------------------------|
|
||||
| `just roles` | Install the necessary Ansible roles pinned in [`requirements.yml`](../requirements.yml) |
|
||||
| `just update` | Run `git pull` (to update the playbook) and install the Ansible roles |
|
||||
| `just install-all` | Run `ansible-playbook -i inventory/hosts setup.yml --tags=install-all,ensure-matrix-users-created,start` |
|
||||
| `just setup-all` | Run `ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-users-created,start` |
|
||||
| `just install-all --ask-vault-pass` | Run commands with additional arguments (`--ask-vault-pass` will be appended to the above installation command) |
|
||||
| `just run-tags install-mautrix-slack,start` | Run specific playbook tags (here `install-mautrix-slack` and `start`) |
|
||||
| `just install-service mautrix-slack` | Run `just run-tags install-mautrix-slack,start` with even less typing |
|
||||
| `just start-all` | (Re-)starts all services |
|
||||
| `just stop-group postgres` | Stop only the Postgres service |
|
||||
| `just register-user alice secret-password yes` | Registers an `alice` user with the `secret-password` password and admin access (admin = `yes`) |
|
||||
|
||||
While [our documentation on prerequisites](prerequisites.md) lists `just` as one of the requirements for installation, using `just` is optional. If you find it difficult to install it, do not find it useful, or want to prefer raw `ansible-playbook` commands for some reason, feel free to run all commands manually. For example, you can run `ansible-galaxy` directly to install the Ansible roles: `rm -rf roles/galaxy; ansible-galaxy install -r requirements.yml -p roles/galaxy/ --force`.
|
||||
|
||||
|
@ -136,12 +136,12 @@ To create your user account (as an administrator of the server) via this Ansible
|
||||
|
||||
**💡 Notes**:
|
||||
- Make sure to adjust `YOUR_USERNAME_HERE` and `YOUR_PASSWORD_HERE`
|
||||
- For `YOUR_USERNAME_HERE`, use a plain username like `john`, not your full identifier (`@user:example.com`)
|
||||
- For `YOUR_USERNAME_HERE`, use a plain username like `alice`, not your full identifier (`@alice:example.com`)
|
||||
|
||||
```sh
|
||||
ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=YOUR_USERNAME_HERE password=YOUR_PASSWORD_HERE admin=yes' --tags=register-user
|
||||
|
||||
# Example: ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=john password=secret-password admin=yes' --tags=register-user
|
||||
# Example: ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=alice password=secret-password admin=yes' --tags=register-user
|
||||
```
|
||||
|
||||
<!--
|
||||
|
@ -16,7 +16,7 @@ Table of contents:
|
||||
|
||||
**Notes**:
|
||||
- Make sure to adjust `USERNAME_HERE` and `PASSWORD_HERE`
|
||||
- For `USERNAME_HERE`, use a plain username like `john`, not a full identifier (`@user:example.com`)
|
||||
- For `USERNAME_HERE`, use a plain username like `alice`, not a full identifier (`@alice:example.com`)
|
||||
- Use `admin=yes` or `admin=no` depending on whether you wish to make the user an administrator of the Matrix server
|
||||
|
||||
After registering a user (using one of the methods below), **you can log in with that user** via the [Element Web](configuring-playbook-client-element-web.md) service that this playbook has installed for you at a URL like this: `https://element.example.com/`.
|
||||
@ -30,7 +30,7 @@ To register a user via this Ansible playbook:
|
||||
```sh
|
||||
just register-user USERNAME_HERE PASSWORD_HERE <admin access: yes or no>
|
||||
|
||||
# Example: `just register-user john secret-password yes`
|
||||
# Example: `just register-user alice secret-password yes`
|
||||
```
|
||||
|
||||
**or** by invoking `ansible-playbook` manually:
|
||||
@ -38,7 +38,7 @@ just register-user USERNAME_HERE PASSWORD_HERE <admin access: yes or no>
|
||||
```sh
|
||||
ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=USERNAME_HERE password=PASSWORD_HERE admin=<yes|no>' --tags=register-user
|
||||
|
||||
# Example: ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=john password=secret-password admin=yes' --tags=register-user
|
||||
# Example: ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=alice password=secret-password admin=yes' --tags=register-user
|
||||
```
|
||||
|
||||
Feel free to register as many users (for friends, family, etc.) as you want. Still, perhaps you should grant full administrative access to your user account only (with `admin=yes`), and others should be created with `admin=no`.
|
||||
@ -52,7 +52,7 @@ If you're using the [Synapse](configuring-playbook-synapse.md) homeserver implem
|
||||
```sh
|
||||
/matrix/synapse/bin/register-user USERNAME_HERE PASSWORD_HERE <admin access: 0 or 1>
|
||||
|
||||
# Example: `/matrix/synapse/bin/register-user john secret-password 1`
|
||||
# Example: `/matrix/synapse/bin/register-user alice secret-password 1`
|
||||
```
|
||||
|
||||
### Registering users manually for Dendrite
|
||||
@ -62,7 +62,7 @@ If you're using the [Dendrite](./configuring-playbook-dendrite.md) homeserver im
|
||||
```sh
|
||||
/matrix/dendrite/bin/create-account USERNAME_HERE PASSWORD_HERE <admin access: 0 or 1>
|
||||
|
||||
# Example: `/matrix/dendrite/bin/create-account john secret-password 1`
|
||||
# Example: `/matrix/dendrite/bin/create-account alice secret-password 1`
|
||||
```
|
||||
|
||||
### Registering users manually for Matrix Authentication Service
|
||||
@ -72,7 +72,7 @@ If you're using the [Matrix Authentication Service](./configuring-playbook-matri
|
||||
```sh
|
||||
/matrix/matrix-authentication-service/bin/register-user USERNAME_HERE PASSWORD_HERE <admin access: 0 or 1>
|
||||
|
||||
# Example: `/matrix/matrix-authentication-service/bin/register-user john secret-password 1`
|
||||
# Example: `/matrix/matrix-authentication-service/bin/register-user alice secret-password 1`
|
||||
```
|
||||
|
||||
This `register-user` script actually invokes the `mas-cli manage register-user` command under the hood. If you'd like more control over the registration process, consider invoking the `mas-cli` command directly:
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
**Notes**:
|
||||
- Make sure to adjust `USERNAME_HERE` and `PASSWORD_HERE`
|
||||
- For `USERNAME_HERE`, use a plain username like `john`, not a full identifier (`@user:example.com`)
|
||||
- For `USERNAME_HERE`, use a plain username like `alice`, not a full identifier (`@alice:example.com`)
|
||||
|
||||
You can reset a user's password via the Ansible playbook:
|
||||
|
||||
|
@ -16,7 +16,7 @@ matrix_dimension_path_prefix: /
|
||||
# For information on how to acquire an access token, visit https://t2bot.io/docs/access_tokens
|
||||
matrix_dimension_access_token: ""
|
||||
|
||||
# Users in form: ['@user1:example.com', '@user2:example.com']
|
||||
# Users in form: ['@alice:example.com', '@bob:example.com']
|
||||
matrix_dimension_admins: []
|
||||
|
||||
# Whether to allow Dimension widgets serve websites with invalid or self signed SSL certificates
|
||||
|
@ -511,7 +511,7 @@ matrix_synapse_allow_public_rooms_without_auth: false
|
||||
# However, disabling federation completely (see `matrix_synapse_federation_enabled`) is a better way to make your server private,
|
||||
# instead of relying on security-by-obscurity -- federating with others, having your public rooms joinable by anyone,
|
||||
# but hiding them and thinking you've secured them.
|
||||
matrix_synapse_allow_public_rooms_over_federation: true
|
||||
matrix_synapse_allow_public_rooms_over_federation: false
|
||||
|
||||
# Whether to require authentication to retrieve profile data (avatars,
|
||||
# display names) of other users through the client API. Defaults to
|
||||
|
@ -2846,8 +2846,8 @@ opentracing:
|
||||
# By default, the list is empty.
|
||||
#
|
||||
#force_tracing_for_users:
|
||||
# - "@user1:server_name"
|
||||
# - "@user2:server_name"
|
||||
# - "@alice:server_name"
|
||||
# - "@bob:server_name"
|
||||
|
||||
# Jaeger can be configured to sample traces at different rates.
|
||||
# All configuration options provided by Jaeger can be set here.
|
||||
|
@ -18,7 +18,7 @@
|
||||
# initial_password: some-password
|
||||
# initial_type: admin
|
||||
#
|
||||
# - username: john
|
||||
# - username: alice
|
||||
# initial_password: some-password
|
||||
# initial_type: user
|
||||
#
|
||||
|
Loading…
x
Reference in New Issue
Block a user