Matrix Docker Ansible eploy
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

891 lines
41 KiB

  1. # SOME DESCRIPTIVE TITLE.
  2. # Copyright (C) 2018-2025, Slavi Pantaleev, Aine Etke, MDAD community members
  3. # This file is distributed under the same license as the matrix-docker-ansible-deploy package.
  4. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
  5. #
  6. #, fuzzy
  7. msgid ""
  8. msgstr ""
  9. "Project-Id-Version: matrix-docker-ansible-deploy \n"
  10. "Report-Msgid-Bugs-To: \n"
  11. "POT-Creation-Date: 2025-01-27 09:54+0200\n"
  12. "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
  13. "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
  14. "Language-Team: LANGUAGE <LL@li.org>\n"
  15. "MIME-Version: 1.0\n"
  16. "Content-Type: text/plain; charset=UTF-8\n"
  17. "Content-Transfer-Encoding: 8bit\n"
  18. #: ../../../docs/faq.md:1
  19. msgid "Frequently Asked Questions"
  20. msgstr ""
  21. #: ../../../docs/faq.md:3
  22. msgid "This documentation page tries to answer various Frequently Asked Questions about all things [Matrix](https://matrix.org/), with a focus on this [Ansible](https://www.ansible.com/) playbook ([What is Ansible? How does it work?](#what-is-ansible-how-does-it-work))."
  23. msgstr ""
  24. #: ../../../docs/faq.md:5
  25. msgid "This FAQ page does not intend to replace the [matrix.org FAQ](https://matrix.org/faq/) (please see that one too)."
  26. msgstr ""
  27. #: ../../../docs/faq.md:7
  28. msgid "We've only started this FAQ recently, so it's still somewhat empty."
  29. msgstr ""
  30. #: ../../../docs/faq.md:9
  31. msgid "Also, we encourage you to not dig yourself into a hole by reading way too much. When you've heard enough, proceed to installation. To get started, see [below](#how-do-i-run-the-installation) about our installation guides."
  32. msgstr ""
  33. #: ../../../docs/faq.md:11
  34. msgid "Introductory"
  35. msgstr ""
  36. #: ../../../docs/faq.md:13
  37. msgid "Where do I find more questions and answers about Matrix?"
  38. msgstr ""
  39. #: ../../../docs/faq.md:15
  40. msgid "This is a Frequently Asked Questions page focused on this [Ansible](https://www.ansible.com/) playbook ([What is Ansible? How does it work?](#what-is-ansible-how-does-it-work)) for deploying a [Matrix](https://matrix.org/) server."
  41. msgstr ""
  42. #: ../../../docs/faq.md:17
  43. msgid "For a lot more generic questions and answers, see the [matrix.org FAQ](https://matrix.org/faq/)."
  44. msgstr ""
  45. #: ../../../docs/faq.md:19
  46. msgid "What is Matrix? What is Element? What is Synapse? Why are you confusing me with so many terms?"
  47. msgstr ""
  48. #: ../../../docs/faq.md:21
  49. msgid "[Matrix](https://matrix.org/) is a new type of realtime communication (chat) network, the closest analogy to which is probably \"email\"."
  50. msgstr ""
  51. #: ../../../docs/faq.md:23
  52. msgid "You don't just use the \"email\" protocols (SMTP, POP3, IMAP) directly though. There's a *server* somewhere which stores your data (`@gmail.com`, `@yahoo.com`, `@hotmail.com`, `@your-company.com`) and you access it by using these \"email\" protocols via some *client* program (Outlook, Thunderbird, some website, etc)."
  53. msgstr ""
  54. #: ../../../docs/faq.md:25
  55. msgid "In the world of the Matrix chat protocol, there are various client programs. The first and currently most full-featured one is called [Element](https://element.io/) (used to be called Riot.im and Vector.im in the past). There are [many other clients](https://matrix.org/clients/). You can switch clients as much as you want until you find the one that is right for you on a given platform (you may use Element Desktop on your desktop, but Fluffychat on your phone, etc)."
  56. msgstr ""
  57. #: ../../../docs/faq.md:27
  58. msgid "Matrix is also like email due to the fact that there are many servers around the world which can all talk to each other (you can send email from `@gmail.com` addresses to `@yahoo.com` and `@hotmail.com` addresses). It's the same with Matrix (`@bob:example.com` can talk to `@alice:example.org`)."
  59. msgstr ""
  60. #: ../../../docs/faq.md:29
  61. msgid "If someone else is hosting your Matrix server (you being `@alice:matrix.org` or some other public server like this), all you need is a Matrix client program, like Element Web or Element X Android."
  62. msgstr ""
  63. #: ../../../docs/faq.md:31
  64. msgid "If you'd like to host your own server (you being `@alice:example.com`), you'd need to set up a Matrix server program, like Synapse."
  65. msgstr ""
  66. #: ../../../docs/faq.md:33
  67. msgid "In short:"
  68. msgstr ""
  69. #: ../../../docs/faq.md:35
  70. msgid "Matrix is the protocol — a set of rules about how the chat network operates"
  71. msgstr ""
  72. #: ../../../docs/faq.md:36
  73. msgid "Element is a client program you can use to participate on the Matrix chat network via some server (yours or someone else's). There are also [many other client programs](https://matrix.org/clients/)."
  74. msgstr ""
  75. #: ../../../docs/faq.md:37
  76. msgid "Synapse is a server program you can use to host your very own Matrix server."
  77. msgstr ""
  78. #: ../../../docs/faq.md:39
  79. msgid "This FAQ here mostly focuses on installing various Matrix services using the Ansible automation tool. You can learn much more about Matrix in the [matrix.org FAQ](https://matrix.org/faq/)."
  80. msgstr ""
  81. #: ../../../docs/faq.md:41
  82. msgid "People I wish to talk to are not on Matrix. Can I talk to them?"
  83. msgstr ""
  84. #: ../../../docs/faq.md:43
  85. msgid "You most likely can. Besides Matrix-native chats, Matrix also supports the concept of \"bridging\", which allows you to plug other networks into it."
  86. msgstr ""
  87. #: ../../../docs/faq.md:45
  88. msgid "This Ansible playbook can help you install [tens of bridges for various networks](configuring-playbook.md#bridging-other-networks)."
  89. msgstr ""
  90. #: ../../../docs/faq.md:47
  91. msgid "Besides setting up your own bridges (preferable), you can also use some [public bridges hosted by others](https://publiclist.anchel.nl/#bridges)."
  92. msgstr ""
  93. #: ../../../docs/faq.md:49
  94. msgid "How do I get started with Matrix?"
  95. msgstr ""
  96. #: ../../../docs/faq.md:51
  97. msgid "One of [Matrix](https://matrix.org/)'s distinguishing strengths (compared to other chat networks) is its decentralized nature. There's not just one entity (company, organization) controlling the servers. Rather there's thousands of servers operated by different people — one server being insecure, slow or disrespective toward its users does not affect the rest of the network. To participate in that decentralization in its fullest, consider hosting your own server or using some public server other than the largest/default one (`matrix.org`)."
  98. msgstr ""
  99. #: ../../../docs/faq.md:53
  100. msgid "There are 3 ways to get into Matrix, depending on your technical ability and needs:"
  101. msgstr ""
  102. #: ../../../docs/faq.md:55
  103. msgid "**using the existing default server** — the easiest way is to use an existing server. The largest public Matrix server is `matrix.org` and it's configured as a default server in clients such as [Element Web](https://app.element.io) and many others. Just use Element Web on the browser via that link (or [download client apps for your Desktop or smartphone](https://element.io/app-for-productivity)), create an account and start chatting."
  104. msgstr ""
  105. #: ../../../docs/faq.md:57
  106. msgid "**using some other server** — instead of using the largest public server (`matrix.org`), you can use another public one. Here's a [list of public Matrix servers](https://joinmatrix.org/servers/) to choose from. Go to [Element Web](https://app.element.io) or download [some other client](https://matrix.org/clients/) of your choosing and adjust the homeserver URL during login."
  107. msgstr ""
  108. #: ../../../docs/faq.md:59
  109. msgid "**using your own server** — running your own server puts you in ultimate control of your data. It also lets you have your own user IDs (e.g. `@bob:example.com`). See [How do I set up my own Matrix server](#how-do-i-set-up-my-own-matrix-server)."
  110. msgstr ""
  111. #: ../../../docs/faq.md:61
  112. msgid "How do I set up my own Matrix server?"
  113. msgstr ""
  114. #: ../../../docs/faq.md:63
  115. msgid "Normally, you'd first choose the [Matrix](https://matrix.org/) server software you'd like to run. At the time of this writing (January/2021), there's only one fully-featured server program, so there's only one reasonable choice. That's [Synapse](https://github.com/element-hq/synapse)."
  116. msgstr ""
  117. #: ../../../docs/faq.md:65
  118. msgid "There are [many guides about installing Synapse](https://matrix.org/docs/guides/#installing-synapse). Using this Ansible playbook is just one way of doing it."
  119. msgstr ""
  120. #: ../../../docs/faq.md:67
  121. msgid "Naturally, we're biased, so our usual recommendation is to go with this [Ansible](https://www.ansible.com/) playbook, instead of installing Synapse (and many many other things around it) manually."
  122. msgstr ""
  123. #: ../../../docs/faq.md:69
  124. msgid "To get started with the playbook, check out the [Quick start](quick-start.md) or full installation guide (starting at the [Prerequisites](prerequisites.md) page)."
  125. msgstr ""
  126. #: ../../../docs/faq.md:71
  127. msgid "What is Ansible? How does it work?"
  128. msgstr ""
  129. #: ../../../docs/faq.md:73
  130. msgid "[Ansible](https://www.ansible.com/) is an automation program. This \"playbook\" is a collection of tasks/scripts that will set up a [Matrix](https://matrix.org/) server for you, so you don't have to perform these tasks manually."
  131. msgstr ""
  132. #: ../../../docs/faq.md:75
  133. msgid "We have written these automated tasks for you and all you need to do is execute them using the Ansible program."
  134. msgstr ""
  135. #: ../../../docs/faq.md:77
  136. msgid "You can install Ansible and this playbook code repository on your own computer and tell it to install Matrix services at the server living at `matrix.example.com`. We recommend installing Ansible on your own computer."
  137. msgstr ""
  138. #: ../../../docs/faq.md:79
  139. msgid "Alternatively, you can download Ansible and the playbook itself directly on the `matrix.example.com` server."
  140. msgstr ""
  141. #: ../../../docs/faq.md:81
  142. msgid "To learn more, see our [dedicated Ansible documentation page](ansible.md)."
  143. msgstr ""
  144. #: ../../../docs/faq.md:83
  145. msgid "What is `just`?"
  146. msgstr ""
  147. #: ../../../docs/faq.md:85
  148. msgid "[`just`](https://github.com/casey/just) is a modern command-runner alternative to [make](https://www.gnu.org/software/make/). It can be used to invoke commands with less typing."
  149. msgstr ""
  150. #: ../../../docs/faq.md:87
  151. msgid "The `just` utility executes shortcut commands (called \"recipes\"), which invoke `ansible-playbook`, `ansible-galaxy` or [`agru`](https://github.com/etkecc/agru) (depending on what is available in your system). The targets of the recipes are defined in [`justfile`](../justfile)."
  152. msgstr ""
  153. #: ../../../docs/faq.md:89
  154. msgid "For details about `just` commands, take a look at: [Running `just` commands](just.md)."
  155. msgstr ""
  156. #: ../../../docs/faq.md:91
  157. msgid "The playbook also contains a `Makefile` for the `make` tool, but most of the just recipes are not available as targets in the `Makefile`."
  158. msgstr ""
  159. #: ../../../docs/faq.md:93
  160. msgid "Why use this playbook and not install Synapse and other things manually?"
  161. msgstr ""
  162. #: ../../../docs/faq.md:95
  163. msgid "There are various guides telling you how easy it is to install [Synapse](https://github.com/element-hq/synapse)."
  164. msgstr ""
  165. #: ../../../docs/faq.md:97
  166. msgid "Reading the documentation of this Ansible playbook, you may also be thinking:"
  167. msgstr ""
  168. #: ../../../docs/faq.md:99
  169. msgid "I don't know what [Ansible](https://www.ansible.com/) is. I don't know what [Docker](https://www.docker.com/) is. This looks more complicated."
  170. msgstr ""
  171. #: ../../../docs/faq.md:101
  172. msgid "… so you may be leaning toward [installing Synapse manually](https://github.com/element-hq/synapse/blob/master/INSTALL.md)."
  173. msgstr ""
  174. #: ../../../docs/faq.md:103
  175. msgid "The problem with a manual installation is:"
  176. msgstr ""
  177. #: ../../../docs/faq.md:105
  178. msgid "Synapse is written in Python. If not packaged for your distribution, you'd need to install various Python modules, etc., and keep them updated."
  179. msgstr ""
  180. #: ../../../docs/faq.md:106
  181. msgid "Synapse requires a [Postgres](https://www.postgresql.org/) database (it can run on SQLite, but that's very much discouraged). So you'd need to install Postgres as well."
  182. msgstr ""
  183. #: ../../../docs/faq.md:107
  184. msgid "you may also need a reverse-proxy server in front of it (nginx, Apache), so you'd need to be familiar with that"
  185. msgstr ""
  186. #: ../../../docs/faq.md:108
  187. msgid "SSL is required, so you'd need to obtain Let's Encrypt (or other free or non-free) certificates for one or more domain names. You'd need to be familiar with [certbot](https://certbot.eff.org/) (when using Let's Encrypt) or similar software."
  188. msgstr ""
  189. #: ../../../docs/faq.md:109
  190. msgid "for each additional component you'd like to add (client like [Element](https://element.io), bridge to some other chat network, integration manager (stickers, other services, Identity Manager, etc.), you'll need to spend extra time installing and wiring it with the rest of the system in a way that works."
  191. msgstr ""
  192. #: ../../../docs/faq.md:110
  193. msgid "you'll likely get slower updates for all of these components, depending on your distro packaging or your own time and ability"
  194. msgstr ""
  195. #: ../../../docs/faq.md:112
  196. msgid "The playbook, on the other hand, installs a bunch of components for you by default, obtains SSL certificates for you, etc. If you'd like, you can enable various bridges and other services with very little effort. All the components are wired to work together."
  197. msgstr ""
  198. #: ../../../docs/faq.md:114
  199. msgid "All services run in Docker containers (most being officially provided by each component's developers), so we're not at the mercy of distro packaging."
  200. msgstr ""
  201. #: ../../../docs/faq.md:116
  202. msgid "Why use this playbook and not just use the Docker image directly?"
  203. msgstr ""
  204. #: ../../../docs/faq.md:118
  205. msgid "Reasons are similar to the reasons for not installing manually."
  206. msgstr ""
  207. #: ../../../docs/faq.md:120
  208. msgid "Besides Synapse, you'd need other things — a Postgres database, likely the [Element](https://element.io) client, etc., etc."
  209. msgstr ""
  210. #: ../../../docs/faq.md:122
  211. msgid "Using the playbook, you get all these components in a way that works well together out of the box."
  212. msgstr ""
  213. #: ../../../docs/faq.md:124
  214. msgid "Occasionally I see some people are talking about \"MDAD\". What is it?"
  215. msgstr ""
  216. #: ../../../docs/faq.md:126
  217. msgid "It is the acronym of us: **m**atrix-**d**ocker-**a**nsible-**d**eploy."
  218. msgstr ""
  219. #: ../../../docs/faq.md:128
  220. msgid "What's different about this Ansible playbook compared to [EMnify/matrix-synapse-auto-deploy](https://github.com/EMnify/matrix-synapse-auto-deploy)?"
  221. msgstr ""
  222. #: ../../../docs/faq.md:130
  223. msgid "This is similar to the [EMnify/matrix-synapse-auto-deploy](https://github.com/EMnify/matrix-synapse-auto-deploy) Ansible deployment, but:"
  224. msgstr ""
  225. #: ../../../docs/faq.md:132
  226. msgid "this one is a complete Ansible playbook (instead of just a role), so it's **easier to run** — especially for folks not familiar with Ansible"
  227. msgstr ""
  228. #: ../../../docs/faq.md:134
  229. msgid "this one installs and hooks together **a lot more Matrix-related services** for you (see above)"
  230. msgstr ""
  231. #: ../../../docs/faq.md:136
  232. msgid "this one **can be executed more than once** without causing trouble"
  233. msgstr ""
  234. #: ../../../docs/faq.md:138
  235. msgid "works on various distros: **CentOS** (7.0+), Debian-based distributions (**Debian** 10/Buster+, **Ubuntu** 18.04+), **Archlinux**"
  236. msgstr ""
  237. #: ../../../docs/faq.md:140
  238. msgid "this one installs everything in a single directory (`/matrix` by default) and **doesn't \"contaminate\" your server** with files all over the place"
  239. msgstr ""
  240. #: ../../../docs/faq.md:142
  241. msgid "this one **doesn't necessarily take over** ports 80 and 443. By default, it sets up [Traefik](https://doc.traefik.io/traefik/) for you there, but you can also [use your own webserver](configuring-playbook-own-webserver.md)"
  242. msgstr ""
  243. #: ../../../docs/faq.md:144
  244. msgid "this one **runs everything in Docker containers**, so it's likely more predictable and less fragile (see [Docker images used by this playbook](container-images.md))"
  245. msgstr ""
  246. #: ../../../docs/faq.md:146
  247. msgid "this one retrieves and automatically renews free [Let's Encrypt](https://letsencrypt.org/) **SSL certificates** for you"
  248. msgstr ""
  249. #: ../../../docs/faq.md:148
  250. msgid "this one optionally can store the `media_store` content repository files on [Amazon S3](https://aws.amazon.com/s3/) (but defaults to storing files on the server's filesystem)"
  251. msgstr ""
  252. #: ../../../docs/faq.md:150
  253. msgid "this one optionally **allows you to use an external PostgreSQL server** for Synapse's database (but defaults to running one in a container)"
  254. msgstr ""
  255. #: ../../../docs/faq.md:152
  256. msgid "helps you **import data from a previous installation** (so you can migrate your manual virtualenv/Docker setup to a more managed one)"
  257. msgstr ""
  258. #: ../../../docs/faq.md:154
  259. msgid "this one is actually **maintained**"
  260. msgstr ""
  261. #: ../../../docs/faq.md:156
  262. msgid "Server-related"
  263. msgstr ""
  264. #: ../../../docs/faq.md:158
  265. msgid "What kind of server do I need to install Matrix using this Ansible playbook?"
  266. msgstr ""
  267. #: ../../../docs/faq.md:160
  268. msgid "We list our server requirements in [Prerequisites](prerequisites.md)."
  269. msgstr ""
  270. #: ../../../docs/faq.md:162
  271. msgid "Why not run Matrix on Kubernetes?"
  272. msgstr ""
  273. #: ../../../docs/faq.md:164
  274. msgid "There's no reason not to run Matrix on [Kubernetes](https://kubernetes.io/)."
  275. msgstr ""
  276. #: ../../../docs/faq.md:166
  277. msgid "However, that's overly complicated for thousands of us who just want to run a single small (and sometimes not so small) Matrix server, either using \"cloud\" servers or even a [Raspberry Pi](https://www.raspberrypi.org/) at home."
  278. msgstr ""
  279. #: ../../../docs/faq.md:168
  280. msgid "For us, a Kubernetes-based setup which requires a cluster of multiple computers and is more technically-involved is a no-go."
  281. msgstr ""
  282. #: ../../../docs/faq.md:170
  283. msgid "There are others working on automating a Matrix-on-Kubernetes setup, such as this [Helm](https://helm.sh/) chart: https://github.com/dacruz21/matrix-chart."
  284. msgstr ""
  285. #: ../../../docs/faq.md:172
  286. msgid "Why don't you use Podman instead of Docker?"
  287. msgstr ""
  288. #: ../../../docs/faq.md:174
  289. msgid "We like the philosophy of a daemonless container runtime, but [Podman](https://podman.io) is just not ready for our use case yet."
  290. msgstr ""
  291. #: ../../../docs/faq.md:176
  292. msgid "Learn more about our past experiences/attempts to give Podman a chance, by reading [this issue](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/520)."
  293. msgstr ""
  294. #: ../../../docs/faq.md:178
  295. msgid "In short, `alias podman=docker` is a lie (for us)."
  296. msgstr ""
  297. #: ../../../docs/faq.md:180
  298. msgid "Why use Docker?"
  299. msgstr ""
  300. #: ../../../docs/faq.md:182
  301. msgid "[Docker](https://www.docker.com/) is one of our 2 hard dependencies (the other one being [systemd](https://systemd.io/))."
  302. msgstr ""
  303. #: ../../../docs/faq.md:184
  304. msgid "It lets us run services in an isolated manner and independently of the (usually old) packages available for distributions."
  305. msgstr ""
  306. #: ../../../docs/faq.md:186
  307. msgid "It also lets us have a unified setup which runs the same across various supported distros (see them on [Prerequisites](prerequisites.md))."
  308. msgstr ""
  309. #: ../../../docs/faq.md:188
  310. msgid "Is Docker a hard requirement?"
  311. msgstr ""
  312. #: ../../../docs/faq.md:190
  313. msgid "Yes. See [Why don't you use Podman instead of Docker?](#why-dont-you-use-podman-instead-of-docker) for why we're not using another container runtime."
  314. msgstr ""
  315. #: ../../../docs/faq.md:192
  316. msgid "All of our services run in containers. It's how we achieve predictability and also how we support tens of different services across lots of distros."
  317. msgstr ""
  318. #: ../../../docs/faq.md:194
  319. msgid "The only thing we need on the distro is systemd and Python (we install Docker ourselves, unless you ask us not to)."
  320. msgstr ""
  321. #: ../../../docs/faq.md:196
  322. msgid "Why don't you use docker-compose?"
  323. msgstr ""
  324. #: ../../../docs/faq.md:198
  325. msgid "Instead of using [docker-compose](https://docs.docker.com/compose/), we prefer installing systemd services and scheduling those independently."
  326. msgstr ""
  327. #: ../../../docs/faq.md:200
  328. msgid "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."
  329. msgstr ""
  330. #: ../../../docs/faq.md:202
  331. msgid "Can I run this on a distro without systemd?"
  332. msgstr ""
  333. #: ../../../docs/faq.md:204
  334. msgid "No. [systemd](https://systemd.io/) is one of our 2 hard dependencies (the other one being [Docker](https://www.docker.com/))."
  335. msgstr ""
  336. #: ../../../docs/faq.md:206
  337. msgid "Can I install this on a Raspberry Pi?"
  338. msgstr ""
  339. #: ../../../docs/faq.md:208
  340. msgid "Yes, you can. See our [Alternative Architectures](alternative-architectures.md) documentation page."
  341. msgstr ""
  342. #: ../../../docs/faq.md:210
  343. msgid "Whether a Raspberry Pi has enough power to give you a good experience is another question. It depends on your use case."
  344. msgstr ""
  345. #: ../../../docs/faq.md:212
  346. msgid "Also see: [What kind of server specs do I need?](#what-kind-of-server-specs-do-i-need)."
  347. msgstr ""
  348. #: ../../../docs/faq.md:214
  349. msgid "What kind of server specs do I need?"
  350. msgstr ""
  351. #: ../../../docs/faq.md:216
  352. msgid "This largely depends on your use case. It's not so much the number of users that you plan to host, but rather the number of large rooms they will join."
  353. msgstr ""
  354. #: ../../../docs/faq.md:218
  355. msgid "Federated rooms with lots of history and containing hundreds of other servers are very heavy CPU-wise and memory-wise."
  356. msgstr ""
  357. #: ../../../docs/faq.md:220
  358. msgid "You can probably use a 1 CPU + 1GB memory server to host hundreds of local users just fine, but as soon as one of them joins a federated room like `#matrix:matrix.org` (Matrix HQ) or some IRC-bridged room (say `##linux`), your server will get the need for a lot more power (at least 2GB RAM, etc)."
  359. msgstr ""
  360. #: ../../../docs/faq.md:222
  361. msgid "Running Matrix on a server with 1GB of memory is possible (especially if you disable some not-so-important services). See [How do I optimize this setup for a low-power server?](#how-do-i-optimize-this-setup-for-a-low-power-server)."
  362. msgstr ""
  363. #: ../../../docs/faq.md:224
  364. msgid "**We recommend starting with a server having at least 2GB of memory** and even then using it sparingly. If you know for sure you'll be joining various large rooms, etc., then going for 4GB of memory or more is a good idea."
  365. msgstr ""
  366. #: ../../../docs/faq.md:226
  367. msgid "Besides the regular Matrix stuff, we also support things like video-conferencing using [Jitsi](configuring-playbook-jitsi.md) and other additional services which (when installed) may use up a lot of memory. Things do add up. Besides the Synapse Matrix server, Jitsi is especially notorious for consuming a lot of resources. If you plan on running Jitsi, we recommend a server with at least 2GB of memory (preferrably more). See our [Jitsi documentation page](configuring-playbook-jitsi.md) to learn how to optimize its memory/CPU usage."
  368. msgstr ""
  369. #: ../../../docs/faq.md:228
  370. msgid "Can I run this in an LXC container?"
  371. msgstr ""
  372. #: ../../../docs/faq.md:230
  373. msgid "If your distro runs within an [LXC container](https://linuxcontainers.org/), you may hit [this issue](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/703). It can be worked around, if absolutely necessary, but we suggest that you avoid running from within an LXC container."
  374. msgstr ""
  375. #: ../../../docs/faq.md:232
  376. msgid "Configuration"
  377. msgstr ""
  378. #: ../../../docs/faq.md:234
  379. msgid "Why install my server at matrix.example.com and not at the base domain?"
  380. msgstr ""
  381. #: ../../../docs/faq.md:236
  382. msgid "It's the same with email servers. Your email address is likely `name@company.com`, not `name@mail.company.com`, even though it's `mail.company.com` that is really handling your data for `@company.com` email to work."
  383. msgstr ""
  384. #: ../../../docs/faq.md:238
  385. msgid "Using a separate domain name is easier to manage (although it's a little hard to get right at first) and keeps your Matrix server isolated from your website (if you have one), from your email server (if you have one), etc. Therefore, this playbook sets up services on your Matrix server (`matrix.example.com`) by default."
  386. msgstr ""
  387. #: ../../../docs/faq.md:240
  388. msgid "I don't control anything on the base domain and can't set up delegation to matrix.example.com. What do I do?"
  389. msgstr ""
  390. #: ../../../docs/faq.md:242
  391. msgid "If you're not in control of your base domain (or the server handling it) at all, you can take a look at [How do I install on matrix.example.com without involving the base domain?](#how-do-i-install-on-matrixexamplecom-without-involving-the-base-domain)"
  392. msgstr ""
  393. #: ../../../docs/faq.md:244
  394. msgid "I can't set up HTTPS on the base domain. How will I get Matrix federating?"
  395. msgstr ""
  396. #: ../../../docs/faq.md:246
  397. msgid "If you really can't obtain an HTTPS certificate for your base domain, you can take a look at [How do I install on matrix.example.com without involving the base domain?](#how-do-i-install-on-matrixexamplecom-without-involving-the-base-domain)"
  398. msgstr ""
  399. #: ../../../docs/faq.md:248
  400. msgid "How do I install on matrix.example.com without involving the base domain?"
  401. msgstr ""
  402. #: ../../../docs/faq.md:250
  403. msgid "Add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:"
  404. msgstr ""
  405. #: ../../../docs/faq.md:271
  406. msgid "After configuring the playbook, run it with [playbook tags](playbook-tags.md) as below:"
  407. msgstr ""
  408. #: ../../../docs/faq.md:278
  409. msgid "**Notes**:"
  410. msgstr ""
  411. #: ../../../docs/faq.md:280
  412. msgid "The shortcut commands with the [`just` program](just.md) are also available: `just install-all` or `just setup-all`"
  413. msgstr ""
  414. #: ../../../docs/faq.md:282
  415. msgid "`just install-all` is useful for maintaining your setup quickly ([2x-5x faster](../CHANGELOG.md#2x-5x-performance-improvements-in-playbook-runtime) than `just setup-all`) when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all`, or these components will still remain installed. Note these shortcuts run the `ensure-matrix-users-created` tag too."
  416. msgstr ""
  417. #: ../../../docs/faq.md:284
  418. msgid "Without setting up [server delegation](howto-server-delegation.md) to `matrix.example.com`, your user IDs will be like `@alice:matrix.example.com`. This is equivalent to having an email address like `bob@mail.company.com`, instead of just `bob@company.com`."
  419. msgstr ""
  420. #: ../../../docs/faq.md:286
  421. msgid "I don't use the base domain for anything. How am I supposed to set up Server Delegation for Matrix services?"
  422. msgstr ""
  423. #: ../../../docs/faq.md:288
  424. msgid "If you don't use your base domain for anything, then it's hard for you to \"serve files over HTTPS\" on it — something we ask you to do for the [.well-known](configuring-well-known.md) setup (needed for [Server Delegation](howto-server-delegation.md))."
  425. msgstr ""
  426. #: ../../../docs/faq.md:290
  427. msgid "Luckily, the playbook can set up your Matrix server (at `matrix.example.com`) to also handle traffic for the base domain (`example.com`)."
  428. msgstr ""
  429. #: ../../../docs/faq.md:292
  430. msgid "See [Serving the base domain](configuring-playbook-base-domain-serving.md)."
  431. msgstr ""
  432. #: ../../../docs/faq.md:294
  433. msgid "How do I optimize this setup for a low-power server?"
  434. msgstr ""
  435. #: ../../../docs/faq.md:296
  436. msgid "You can disable some not-so-important services to save on memory."
  437. msgstr ""
  438. #: ../../../docs/faq.md:318
  439. msgid "You can also consider implementing a restriction on room complexity, in order to prevent users from joining very heavy rooms:"
  440. msgstr ""
  441. #: ../../../docs/faq.md:328
  442. msgid "If you've installed [Jitsi](configuring-playbook-jitsi.md) (not installed by default), there are additional optimizations listed on its documentation page that you can perform."
  443. msgstr ""
  444. #: ../../../docs/faq.md:330
  445. msgid "I already have Docker on my server. Can you stop installing Docker via the playbook?"
  446. msgstr ""
  447. #: ../../../docs/faq.md:332
  448. msgid "Yes, we can stop installing Docker ourselves. Just use this in your `vars.yml` file:"
  449. msgstr ""
  450. #: ../../../docs/faq.md:338
  451. msgid "I run another webserver on the same server where I wish to install Matrix. What now?"
  452. msgstr ""
  453. #: ../../../docs/faq.md:340
  454. msgid "By default, we install a webserver for you ([Traefik](https://doc.traefik.io/traefik/)), but you can also use [your own webserver](configuring-playbook-own-webserver.md)."
  455. msgstr ""
  456. #: ../../../docs/faq.md:342
  457. msgid "How is the effective configuration determined?"
  458. msgstr ""
  459. #: ../../../docs/faq.md:344
  460. msgid "Configuration variables are defined in multiple places in this playbook and are considered in this order:"
  461. msgstr ""
  462. #: ../../../docs/faq.md:346
  463. msgid "there are defaults coming from each role's defaults file (`role/matrix*/defaults/main.yml`). These variable values aim to be good defaults for when the role is used standalone (outside of this collection of roles, also called playbook)."
  464. msgstr ""
  465. #: ../../../docs/faq.md:348
  466. msgid "then, there are overrides in `group_vars/matrix_servers`, which aim to adjust these \"standalone role defaults\" to something which better fits the playbook in its entirety."
  467. msgstr ""
  468. #: ../../../docs/faq.md:350
  469. msgid "finally, there's your `inventory/host_vars/matrix.example.com/vars.yml` file, which is the ultimate override"
  470. msgstr ""
  471. #: ../../../docs/faq.md:352
  472. msgid "What configuration variables are available?"
  473. msgstr ""
  474. #: ../../../docs/faq.md:354
  475. msgid "You can discover the variables you can override in each role (`roles/*/*/defaults/main.yml`)."
  476. msgstr ""
  477. #: ../../../docs/faq.md:356
  478. msgid "As described in [How is the effective configuration determined?](#how-is-the-effective-configuration-determined), these role-defaults may be overriden by values defined in `group_vars/matrix_servers`."
  479. msgstr ""
  480. #: ../../../docs/faq.md:358
  481. msgid "Refer to both of these for inspiration. Still, as mentioned in [Configuring the playbook](configuring-playbook.md), you're only ever supposed to edit your own `inventory/host_vars/matrix.example.com/vars.yml` file and nothing else inside the playbook (unless you're meaning to contribute new features)."
  482. msgstr ""
  483. #: ../../../docs/faq.md:360
  484. #: ../../../docs/faq.md:372
  485. msgid "**Note**: some of the roles (`roles/galaxy/*`) live in separate repositories and are only installed after your run `just roles` (or `make roles`) or `just update` (which automatically does `git pull` and `just roles`)."
  486. msgstr ""
  487. #: ../../../docs/faq.md:362
  488. msgid "I'd like to adjust some configuration which doesn't have a corresponding variable. How do I do it?"
  489. msgstr ""
  490. #: ../../../docs/faq.md:364
  491. msgid "The playbook doesn't aim to expose all configuration settings for all services using variables. Doing so would amount to hundreds of variables that we have to create and maintain."
  492. msgstr ""
  493. #: ../../../docs/faq.md:366
  494. msgid "Instead, we only try to make some important basics configurable using dedicated variables you can see in each role. See [What configuration variables are available?](#what-configuration-variables-are-available)."
  495. msgstr ""
  496. #: ../../../docs/faq.md:368
  497. msgid "Besides that, each role (component) aims to provide a `matrix_SOME_COMPONENT_configuration_extension_yaml` (or `matrix_SOME_COMPONENT_configuration_extension_json`) variable, which can be used to override the configuration."
  498. msgstr ""
  499. #: ../../../docs/faq.md:370
  500. msgid "Check each role's `roles/*/*/defaults/main.yml` for the corresponding variable and an example for how use it."
  501. msgstr ""
  502. #: ../../../docs/faq.md:374
  503. msgid "Installation"
  504. msgstr ""
  505. #: ../../../docs/faq.md:376
  506. msgid "How do I run the installation?"
  507. msgstr ""
  508. #: ../../../docs/faq.md:378
  509. msgid "See [Installing](installing.md) to learn how to use Ansible to install Matrix services."
  510. msgstr ""
  511. #: ../../../docs/faq.md:380
  512. msgid "However, we recommend you to follow our installation guide, instead of jumping straight to installing."
  513. msgstr ""
  514. #: ../../../docs/faq.md:382
  515. msgid "There are two guides available:"
  516. msgstr ""
  517. #: ../../../docs/faq.md:384
  518. msgid "⚡ **[Quick start](quick-start.md)** (for beginners): this is recommended for those who do not have an existing Matrix server and want to start quickly with \"opinionated defaults\"."
  519. msgstr ""
  520. #: ../../../docs/faq.md:386
  521. msgid "**Full installation guide (for advanced users)**: if you need to import an existing Matrix server's data into the new server or want to learn more while setting up the server, follow this guide by starting with the **[Prerequisites](prerequisites.md)** documentation page."
  522. msgstr ""
  523. #: ../../../docs/faq.md:388
  524. msgid "I installed Synapse some other way. Can I migrate such a setup to the playbook?"
  525. msgstr ""
  526. #: ../../../docs/faq.md:390
  527. msgid "Yes, you can."
  528. msgstr ""
  529. #: ../../../docs/faq.md:392
  530. msgid "You generally need to do a playbook installation. It's recommended to follow the full installation guide (starting at the [Prerequisites](prerequisites.md) page), not the [Quick start](quick-start.md) guide. The full installation guide will tell you when it's time to import your existing data into the newly-prepared server."
  531. msgstr ""
  532. #: ../../../docs/faq.md:394
  533. msgid "This Ansible playbook guides you into installing a server for `example.com` (user IDs are like this: `@alice:example.com`), while the server is at `matrix.example.com`. If your existing setup has a server name (`server_name` configuration setting in Synapse's `homeserver.yaml` file) other than the base `example.com`, you may need to tweak some additional variables. This FAQ entry may be of use if you're dealing with a more complicated setup — [How do I install on matrix.example.com without involving the base domain?](#how-do-i-install-on-matrixexamplecom-without-involving-the-base-domain)"
  534. msgstr ""
  535. #: ../../../docs/faq.md:396
  536. msgid "After configuring the playbook and installing and **before starting** services (done with `ansible-playbook … --tags=start`) you'd import [your SQLite](importing-synapse-sqlite.md) (or [Postgres](importing-postgres.md)) database and also [import your media store](importing-synapse-media-store.md)."
  537. msgstr ""
  538. #: ../../../docs/faq.md:398
  539. msgid "I've downloaded Ansible and the playbook on the server. It can't connect using SSH."
  540. msgstr ""
  541. #: ../../../docs/faq.md:400
  542. msgid "If you're using the playbook directly on the server, then Ansible doesn't need to connect using SSH."
  543. msgstr ""
  544. #: ../../../docs/faq.md:402
  545. msgid "It can perform a local connection instead. Just set `ansible_connection=local` at the end of the server line in `inventory/hosts` and re-run the playbook."
  546. msgstr ""
  547. #: ../../../docs/faq.md:404
  548. msgid "If you're running Ansible from within a container (one of the possibilities we list on our [dedicated Ansible documentation page](ansible.md)), then using `ansible_connection=local` is not possible."
  549. msgstr ""
  550. #: ../../../docs/faq.md:406
  551. msgid "Troubleshooting"
  552. msgstr ""
  553. #: ../../../docs/faq.md:408
  554. msgid "I get \"Error response from daemon: configured logging driver does not support reading\" when I do `docker logs matrix-synapse`."
  555. msgstr ""
  556. #: ../../../docs/faq.md:410
  557. msgid "See [How can I see the logs?](#how-can-i-see-the-logs)."
  558. msgstr ""
  559. #: ../../../docs/faq.md:412
  560. msgid "How can I see the logs?"
  561. msgstr ""
  562. #: ../../../docs/faq.md:414
  563. msgid "We utilize [systemd/journald](https://www.freedesktop.org/software/systemd/man/systemd-journald.service.html#Description) for logging."
  564. msgstr ""
  565. #: ../../../docs/faq.md:416
  566. msgid "To see logs for Synapse, run `journalctl -fu matrix-synapse.service`. You may wish to see the [manual page for journalctl](https://www.commandlinux.com/man-page/man1/journalctl.1.html)."
  567. msgstr ""
  568. #: ../../../docs/faq.md:418
  569. msgid "Available service names can be seen by doing `ls /etc/systemd/system/matrix*.service` on the server."
  570. msgstr ""
  571. #: ../../../docs/faq.md:420
  572. msgid "Some services also log to files in `/matrix/*/data/..`, but we're slowly moving away from that."
  573. msgstr ""
  574. #: ../../../docs/faq.md:422
  575. msgid "We also disable Docker logging, so you can't use `docker logs matrix-*` either. We do this to prevent useless double (or even triple) logging and to avoid having to rotate log files."
  576. msgstr ""
  577. #: ../../../docs/faq.md:424
  578. msgid "We just simply delegate logging to journald and it takes care of persistence and expiring old data."
  579. msgstr ""
  580. #: ../../../docs/faq.md:426
  581. msgid "Also see: [How long do systemd/journald logs persist for?](#how-long-do-systemdjournald-logs-persist-for)"
  582. msgstr ""
  583. #: ../../../docs/faq.md:428
  584. msgid "How long do systemd/journald logs persist for?"
  585. msgstr ""
  586. #: ../../../docs/faq.md:430
  587. msgid "On some distros, the journald logs are just in-memory and not persisted to disk."
  588. msgstr ""
  589. #: ../../../docs/faq.md:432
  590. msgid "Consult (and feel free to adjust) your distro's journald logging configuration in `/etc/systemd/journald.conf`."
  591. msgstr ""
  592. #: ../../../docs/faq.md:434
  593. msgid "To enable persistence and put some limits on how large the journal log files can become, adjust your configuration like this:"
  594. msgstr ""
  595. #: ../../../docs/faq.md:445
  596. msgid "Maintenance"
  597. msgstr ""
  598. #: ../../../docs/faq.md:447
  599. msgid "Do I need to do anything to keep my Matrix server updated?"
  600. msgstr ""
  601. #: ../../../docs/faq.md:449
  602. msgid "Yes. We don't update anything for you automatically."
  603. msgstr ""
  604. #: ../../../docs/faq.md:451
  605. msgid "See our [documentation page about upgrading services](maintenance-upgrading-services.md)."
  606. msgstr ""
  607. #: ../../../docs/faq.md:453
  608. msgid "How do I move my existing installation to another (VM) server?"
  609. msgstr ""
  610. #: ../../../docs/faq.md:455
  611. msgid "If you have an existing installation done using this Ansible playbook, you can easily migrate that to another server using [our dedicated server migration guide](maintenance-migrating.md)."
  612. msgstr ""
  613. #: ../../../docs/faq.md:457
  614. msgid "If your previous installation is done in some other way (not using this Ansible playbook), see [I installed Synapse some other way. Can I migrate such a setup to the playbook?](#i-installed-synapse-some-other-way-can-i-migrate-such-a-setup-to-the-playbook)."
  615. msgstr ""
  616. #: ../../../docs/faq.md:459
  617. msgid "How do I back up the data on my server?"
  618. msgstr ""
  619. #: ../../../docs/faq.md:461
  620. msgid "We haven't documented this properly yet, but the general advice is to:"
  621. msgstr ""
  622. #: ../../../docs/faq.md:463
  623. msgid "back up Postgres by making a database dump. See [Backing up PostgreSQL](maintenance-postgres.md#backing-up-postgresql)"
  624. msgstr ""
  625. #: ../../../docs/faq.md:465
  626. msgid "back up all `/matrix` files, except for `/matrix/postgres/data` (you already have a dump) and `/matrix/postgres/data-auto-upgrade-backup` (this directory may exist and contain your old data if you've [performed a major Postgres upgrade](maintenance-postgres.md#upgrading-postgresql))."
  627. msgstr ""
  628. #: ../../../docs/faq.md:467
  629. msgid "You can later restore these by:"
  630. msgstr ""
  631. #: ../../../docs/faq.md:469
  632. msgid "Restoring the `/matrix` directory and files on the new server manually"
  633. msgstr ""
  634. #: ../../../docs/faq.md:470
  635. msgid "Following the instruction described on [Installing a server into which you'll import old data](installing.md#installing-a-server-into-which-youll-import-old-data)"
  636. msgstr ""
  637. #: ../../../docs/faq.md:472
  638. msgid "If your server's IP address has changed, you may need to [set up DNS](configuring-dns.md) again."
  639. msgstr ""
  640. #: ../../../docs/faq.md:474
  641. msgid "What is this `/matrix/postgres/data-auto-upgrade-backup` directory that is taking up so much space?"
  642. msgstr ""
  643. #: ../../../docs/faq.md:476
  644. msgid "When you [perform a major Postgres upgrade](maintenance-postgres.md#upgrading-postgresql), we save the the old data files in `/matrix/postgres/data-auto-upgrade-backup`, just so you could easily restore them should something have gone wrong."
  645. msgstr ""
  646. #: ../../../docs/faq.md:478
  647. msgid "After verifying that everything still works after the Postgres upgrade, you can safely delete `/matrix/postgres/data-auto-upgrade-backup`"
  648. msgstr ""
  649. #: ../../../docs/faq.md:480
  650. msgid "How do I debug or force SSL certificate renewal?"
  651. msgstr ""
  652. #: ../../../docs/faq.md:482
  653. msgid "SSL certificates are managed automatically by the [Traefik](https://doc.traefik.io/traefik/) reverse-proxy server."
  654. msgstr ""
  655. #: ../../../docs/faq.md:484
  656. msgid "If you're having trouble with SSL certificate renewal, check the Traefik logs (`journalctl -fu matrix-traefik`)."
  657. msgstr ""
  658. #: ../../../docs/faq.md:486
  659. msgid "If you're [using your own webserver](configuring-playbook-own-webserver.md) instead of the integrated one (Traefik), you should investigate in another way."
  660. msgstr ""
  661. #: ../../../docs/faq.md:488
  662. msgid "Miscellaneous"
  663. msgstr ""
  664. #: ../../../docs/faq.md:490
  665. msgid "I would like to see this favorite service of mine integrated and become available on my Matrix server. How can I request it?"
  666. msgstr ""
  667. #: ../../../docs/faq.md:492
  668. msgid "You can freely create an issue for feature request on the repository at GitHub [here](https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/new). Note this is a community project with no financial backing, and there is not assurance that your request would be eventually picked up by others and the requested feature would become available. The easiest way to get a feature into this project is to just develop it yourself."
  669. msgstr ""
  670. #: ../../../docs/faq.md:494
  671. msgid "Also, please note that this playbook intends to focus solely on Matrix and Matrix-related services. If your request is not specific to Matrix, you may as well to consider to submit it to the [mash-playbook](https://github.com/mother-of-all-self-hosting/mash-playbook), maintained by the members behind this matrix-docker-ansible-deploy project. [This document on the interoperability](https://github.com/mother-of-all-self-hosting/mash-playbook/blob/main/docs/interoperability.md) describes how to deploy services along with the Matrix services easily."
  672. msgstr ""