Commit Graph

64 Commits

Author SHA1 Message Date
Suguru Hirahara
194a3ca461
Add "Quick start" guide (#3801)
* Add docs/quick-start.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add description about keeping the playbook and services up-to-date

Also: move descriptions about difference between the playbook tags (setup-all and install-all) and about the just "recipe" from installing.md to maintenance-upgrading-services.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Replace <your-username> with YOUR_USERNAME_HERE

This is a common expression and should avoid misunderstanding that `<` and `>` would need to be included

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Replace <your-password> with YOUR_PASSWORD_HERE

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Change the link to 'Quick start' on the breadcrumbs from README.md to quick-start.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add a link to quick-start.md on the "Getting started" section

Since I am not quite sure whether the link to prerequisites.md should be replaced in favor of this link, this commit leaves it as it is for now.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add a link to quick-start.md on docs/README.md

Since I am not quite sure whether the link to prerequisites.md should be replaced in favor of this link, this commit leaves it as it is for now.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add note about using "example.com" as an example domain

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Remove backticks from command examples to register a user

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Apply suggestions from code review

Co-authored-by: Slavi Pantaleev <slavi@devture.com>

* Improve notes for instruction to create a user account

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add details about delegation to installing.md and quick-start.md

Some information is omitted on quick-start.md in favor of installing.md to keep the quick start guide simple.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/quick-start.md: add the breadcrumb header

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Edit docs/quick-start.md: run the setup command with install-all by default

Refer docs/maintenance-upgrading-services.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Revert "Update docs/quick-start.md: add the breadcrumb header"

This reverts commit 9a6e1cf14c.

As the quick start guide is standalone.

* Update docs/quick-start.md: add headers inside the install section

These headers should make it perfectly clear that there are two steps to be done to install with the playbook

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update quick-start.md

* Update docs/registering-users.md: notes for manual user registeration

Copy the same notes from quick-start.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Reword some things in quick start

* Add alternative to `just roles`

* Update docs/configuring-dns.md: sync with docs/quick-start.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/quick-start.md: add a link to docs/registering-users.md for an instruction to add user accounts

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/registering-users.md and docs/updating-users-passwords.md: remove "your" from username and password placeholders

These documentations, unlike docs/installing.md and docs/quick-start.md, describe how to handle users (registering them or changing their passwords), some of whom are yours, while others are not.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/installing.md: add "your" to make it clear that it is "your" account that is going to be created

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/installing.md and docs/quick-start.md: mention "make roles"

This commit adds mentions to "make roles" and a note about the preference of ansible-playbook commands over the just "recipes".

quick-start.md intends to be referred by those who have never used the playbook to set up a server, so it is safer to regard that it is not clear to them what exactly the just "recipes" are made of, ie. it takes some time and experience until someone understands simplicity of them. For beginners, I believe that we should prefer the basics over simplicity, from the educational point of view.

If someone feels tired of using the same command repetitively, then the person will have been already well accustomed to the way how the playbook works and how the server is supposed to be maintained, and the person is "qualified" to use the just "recipes", and should be able to use them with confidence, distinguishing the playbook tags from the "recipes", for example, from "just install-all" and "ansible-playbook -i inventory/hosts setup.yml --tags=install-all". Such level of familiarity and experience should not be expected on the quick start guide.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update instructions to update Ansible roles

Also: move the detailed explanation about "just roles" from installing.md to maintenance-upgrading-services.md

TBD: create a dedicated documentation for the "just" program and the concept of its "recipe" (shortcut of commands)

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add a note about cases to create multiple accounts/users

Since one of the quick start guide's goals is to set up an own user account, this commit adds the note about creating multiple accounts/users to installing.md and registering-users.md only. It should be fine as registering-users.md is linked from quick-start.md

Also:
- On installing.md and quick-start.md, change instruction from what encourages to select "admin=yes" or "admin=no" to what encourages to use "admin=yes", since your user account will be the sole user on the server, as long as you set up the server by following the documentation
- Remove the link to registering-users.md from quick-start.md as the documentation is already linked above, under the header of the section
- Sync docs/installing.md with other documentation

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Remove a line about setting "admin=yes" to reduce the amount of information

Because quick-start.md is getting longer with much information, it removes the note in favor of the linked registering-users.md documentation. The note is available on installing.md as well, and details about adding user accounts for other people can (and should) be checked on those documentations.

Also, this commit edits lines above these notes to make it clear that your user account will be an administrator of the server.

With this commit, the amount of the information about adding user accounts will be: registering-users.md > installing.md > quick-start.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Fix a broken anchor link on docs/installing.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Replace repetitive information about upgrading with an anchor link to docs/maintenance-upgrading-services.md

Because details to update/upgrade the Matrix services is not necessary for quick start and the amount of information should be reduced from the viewpoint of maintainability, this commit removes details to update/upgrade from quick-start.md

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/quick-start.md: add a note about keeping it tidy and simple

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/maintenance-checking-services.md and docs/quick-start.md: add instruction to use federation tester against the base domain

Per Slavi's suggestion.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/installing.md and docs/quick-start.md: replace commands to finalize the installation

Per Slavi's suggestion.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Clarify install-matrix-static-files to avoid confusion with install-all; Minor consistency improvements

---------

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-11-23 09:59:29 +02:00
Suguru Hirahara
b1dec4a123
Edit docs/prerequisites.md: add an anchor link to the official documentation of passlib
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:46:26 +09:00
Suguru Hirahara
e38f433177
Edit docs/prerequisites.md: add an introductory paragraph
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:41:26 +09:00
Suguru Hirahara
12b67f7925
Edit docs/prerequisites.md: entries for local computer
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:41:04 +09:00
Suguru Hirahara
43d1760077
Edit docs/prerequisites.md: move the section for the local computer up
This change should make it easier to notice Ansible version requirement

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:40:44 +09:00
Suguru Hirahara
c7148d8b05
Edit docs/prerequisites.md: remove instructions to install whether on the remove server or on your local computer
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:40:20 +09:00
Suguru Hirahara
39c21816ca
Edit docs/prerequisites.md: create categories for required software on the remote server and local computer
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:39:54 +09:00
Suguru Hirahara
01bed6d512
Edit docs/prerequisites.md: add an item for a password generator
Since it is required to create and input a strong password (random strings) on vars.yml, this commit adds a password generator as a required software to configure and run the playbook. Password Tech, reportedly formerly known as "PWGen for Windows", is linked from https://github.com/jbernard/pwgen

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-18 15:39:13 +09:00
Suguru Hirahara
135039b276
Change "Configuring your DNS server" to "Configuring your DNS settings"
Essentially it means "configuring your DNS settings or records on the DNS server you use".

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-17 12:06:30 +09:00
Suguru Hirahara
76e6bf3966
Remove redundante whitespace characters from the breadcrumbs
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-16 23:47:18 +09:00
Suguru Hirahara
439e012f03
Add U+25B6 (BLACK RIGHT-POINTING TRIANGLE) characters to installation procedure navigation
Set anchor links to those characters as well.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-16 23:44:11 +09:00
Suguru Hirahara
0a2198f754
Update docs/configuring-dns.md and docs/prerequisites.md: add the common horizontal line
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-05 22:30:21 +09:00
Suguru Hirahara
3684e93a61
Add hard-coded breadcrumbs to documentation files about installation procedure for easier navigation (#3745)
* Add hard-coded breadcrumbs to documentation files about installation procedure for easier navigation

Since it is easy to get lost among these files, the breadcrumbs should be helpful to get the whole picture of the procedure. Hopefully they will be replaced with something else generated automatically.

Please note that the usage of <sup> HTML tags on this context is not proper as the tag is intended to be used only for typographical reasons. Here <small> tags should rather be used instead as long as we do not use CSS, but since GitHub strips these tags against its spec (https://github.github.com/gfm/#disallowed-raw-html-extension-) (also note: the <small> HTML tags are not stripped on Codeberg for example), this commit intentionally uses <sup> to have those breadcrumbs rendered in small points.

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Update docs/configuring-playbook.md title

The file is referred from other files as "Configuring the playbook"

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

* Add "Quick start" link with the thunder icon

For now docs/README.md is linked

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>

---------

Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-05 14:38:26 +02:00
Suguru Hirahara
1c5a8871d5
Replace <your-domain> with example.com
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-10-18 04:02:22 +09:00
Suguru Hirahara
c5a6862f70
Fixes indentation on prerequisites.md
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-10-12 16:16:44 +09:00
Fabio Bonelli
04db5e77c0 doc: mention HTTP/3 in port configuration 2024-07-16 12:38:56 +02:00
Aine
b347d98161
rewrite just update command to provide a one-line command to update everything (#3410)
* rewrite `just update` command to provide a one-line command to update everything

* update prefix

* uncomment update-self

* Revert requirements.yml updates not belonging to this PR

* Justfile and documentation updates to make things clearer

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2024-07-15 07:57:08 +03:00
Slavi Pantaleev
b5f4030cd0 Update supported distros list
I've just tested Rocky Linux v9 and it seems to work.

I suppose the Docker situation
(https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/300)
on RHEL v8 has improved, so it probably works too.

I see no reason AlmaLinux and other RHEL derivatives wouldn't work,
but I have neither tested them, nor have confirmation from others about
it.

It's mostly a matter of us being able to install:
- Docker, via https://github.com/geerlingguy/ansible-role-docker which
  seems to support various distros
- a few other packages (systemd-timesyncd, etc).

The list of supported distros has been reordered alphabetically.

I've heard reports of SUSE Linux working well too, so it may also be added
if confirmed again.

Closes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/300
2024-02-14 15:54:53 +02:00
Joshua Hoffmann
09b8f49871
Update prerequisites.md (#3050)
* Update prerequisites.md

Document that sudo is required.

* Relocate sudo requirement in prerequisites and reword

---------

Co-authored-by: Slavi Pantaleev <slavi@devture.com>
2023-12-18 10:58:28 +02:00
Slavi Pantaleev
01db1ae9b7 Mention passlib
It's not strictly required yet, but certain versions of Ansible display warnings
if passlib is missing. The non-passlib crypto usage is deprecated, so
passlib will become a requirement in newer Ansible versions. It's only a
matter of time.
2023-03-20 18:44:20 +02:00
Slavi Pantaleev
a529bca756 Add justfile
We keep the Makefile for now, but don't mention it to new
users anymore.
2023-01-11 15:12:05 +02:00
Slavi Pantaleev
7289992dba Document make roles some more
Improves:

- https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/2232
- https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/2217#issuecomment-1304366791
2022-11-05 07:10:04 +02:00
Slavi Pantaleev
80da7dfb0b Update docs/prerequisites.md 2022-10-20 11:48:56 +03:00
Aaron Raimist
311f44a19c
Document git as a potential prereq
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/1792
2022-05-16 04:36:18 +00:00
Slavi Pantaleev
92af6c162d Do not advertise Debian 9 support
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/1282

It's mostly due to Docker CE dropping its repositories (and support) for
Debian 9.
If one installs Docker manually (likely a package named `docker.io`), it
will likely still work.
In any case, Debian 9 is old and end-of-life now, so advertising support
for it is not productive.
2021-09-21 10:57:32 +03:00
Aaron Raimist
8527c0a8d9
Bump minimum supported Ubuntu version
Ubuntu ended support for 16.04 in April
2021-09-18 16:23:42 -05:00
Slavi Pantaleev
c95ca4badc Do not ask everyone to whitelist Jitsi ports
It's an optional service, so we shouldn't bother most people with it.
2021-04-21 14:48:54 +03:00
Slavi Pantaleev
93960b70be Do not fail if _matrix-identity DNS SRV record missing
Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/963

This also simplifies Prerequisites, which is great.

It'd be nice if we were doing these checks in some optional manner
and reporting them as helpful messages (using
`matrix_playbook_runtime_results`), but that's more complicated.
I'd rather drop these checks completely.
2021-03-30 11:24:04 +03:00
Slavi Pantaleev
1a0f64f23b Mention specs on the Prerequisites page
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/682
2021-01-28 19:21:33 +02:00
Slavi Pantaleev
0f64f4dc4b Stop using + to mean "or newer" 2021-01-22 22:05:52 +02:00
Slavi Pantaleev
fb28f59f8c Initial work on a FAQ document 2021-01-21 12:55:17 +02:00
Slavi Pantaleev
e1690722f7 Replace cronjobs with systemd timers
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/756

Related to https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/737

I feel like timers are somewhat more complicated and dirty (compared to
cronjobs), but they come with these benefits:

- log output goes to journald
- on newer systemd distros, you can see when the timer fired, when it
will fire, etc.
- we don't need to rely on cron (reducing our dependencies to just
systemd + Docker)

Cronjobs work well, but it's one more dependency that needs to be
installed. We were even asking people to install it manually
(in `docs/prerequisites.md`), which could have gone unnoticed.

Once in a while someone says "my SSL certificates didn't renew"
and it's likely because they forgot to install a cron daemon.

Switching to systemd timers means that installation is simpler
and more unified.
2021-01-14 23:35:50 +02:00
Slavi Pantaleev
88acc98c23 Mention LXC 2021-01-13 19:39:08 +02:00
Slavi Pantaleev
e2e6cfaa8b Document Ansible's Python interpreter discovery some more
Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/570

Fixes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/641
2020-12-16 18:14:52 +02:00
Slavi Pantaleev
c07c927d9f Automatically enable openid listeners when ma1sd enabled
ma1sd requires the openid endpoints for certain functionality.
Example: 90b2b5301c/src/main/java/io/kamax/mxisd/auth/AccountManager.java (L67-L99)

If federation is disabled, we still need to expose these openid APIs on the
federation port.

Previously, we were doing similar magic for Dimension.
As per its documentation, when running unfederated, one is to enable
the openid listener as well. As per their recommendation, people
are advised to do enable it on the Client-Server API port
and use the `federationUrl` variable to override where the federation
port is (making federation requests go to the Client-Server API).

Because ma1sd always uses the federation port (unless you do some
DNS overwriting magic using its configuration -- which we'd rather not
do), it's better if we just default to putting the `openid` listener
where it belongs - on the federation port.

With this commit, we retain the "automatically enable openid APIs" thing
we've been doing for Dimension, but move it to the federation port instead.
We also now do the same thing when ma1sd is enabled.
2020-12-08 16:59:20 +02:00
Slavi Pantaleev
3fd198e89a Add notes about running Ansible on Ubuntu 20.04
Discussed in #669 (Github Issue).
2020-10-15 11:35:29 +03:00
Chris van Dijk
cb94167ccb Add missing parenthesis in docs 2020-05-27 17:00:44 +02:00
Chris van Dijk
84e2e31d07 Linking to a file is more robust than linking to a line number 2020-05-27 16:40:05 +02:00
Chris van Dijk
1b47197c91 Minor docs formatting cleanup 2020-05-27 15:55:11 +02:00
Chris van Dijk
256de59a75 Add note on port forwarding to docs when running Jitsi behind NAT 2020-05-27 14:33:17 +02:00
Horvath Gergely
441278412b add explicit information for the Rapsberry pi 2020-04-19 13:51:26 +02:00
skoal
ab58b3fc9e
Update prerequisites.md
Added Jitsi firewall ports
2020-04-09 14:31:42 +02:00
Christian Wolf
1b87dbf54b Added documentation to README file 2020-03-28 17:33:51 +01:00
Slavi Pantaleev
22ce50875a Mention that root access is a requirement
Fixes #396 (Github Issue).
2020-03-15 13:04:55 +02:00
Horvath Gergely
447dd94ff9 update documentation 2020-03-14 20:41:01 +01:00
Horvath Gergely
470b9875e7 Document raspberry pi support 2020-02-23 19:32:00 +01:00
Slavi Pantaleev
50614f1bad Simplify Prerequisites a bit
Don't mention systemd-journald adjustment anymore, because
we've changed log levels to WARNING and Synapse is not chatty by default
anymore.

The "excessive log messages may get dropped on CentOS" issue no longer
applies to most users and we shouldn't bother them with it.
2019-11-10 08:35:17 +02:00
Slavi Pantaleev
9b84e06201 Add a note about CentOS 8 support 2019-11-10 08:31:08 +02:00
Aaron Raimist
cb2cb70b31
Mention that ARM is not supported
Feel free to reword but we have had a couple of issues created now asking about Raspberry Pi support.
2019-11-08 08:55:36 -06:00
Slavi Pantaleev
0e4030f05c Add missing word 2019-07-09 09:14:57 +03:00