Blame
|
1 | # FAQ |
||||||
| 2 | ||||||||
| 3 | We cover both frequently asked questions and special cases that would polute the documentation here. |
|||||||
| 4 | ||||||||
| 5 | ## Installation |
|||||||
| 6 | ||||||||
| 7 | ### Environments with SELinux |
|||||||
| 8 | ||||||||
| 9 | To make An Otter Wiki run in an environment with `SELINUX=enforcing` with the methods propose in the [[Installation]] document the bind mounts have to be adjusted. |
|||||||
| 10 | ||||||||
| 11 | When podman gives you the error message |
|||||||
| 12 | ``` |
|||||||
| 13 | mkdir: cannot create directory '/app-data': Permission denied |
|||||||
| 14 | ``` |
|||||||
| 15 | please update your `compose.yaml` to |
|||||||
| 16 | ```yaml |
|||||||
| 17 | services: |
|||||||
| 18 | otterwiki: |
|||||||
| 19 | image: redimp/otterwiki:2 |
|||||||
| 20 | restart: unless-stopped |
|||||||
| 21 | ports: |
|||||||
| 22 | - 8080:80 |
|||||||
| 23 | volumes: |
|||||||
| 24 | - ./app-data:/app-data:Z |
|||||||
| 25 | ``` |
|||||||
| 26 | ||||||||
| 27 | For podman please see the [podman troubleshooting guide](https://github.com/containers/podman/blob/main/troubleshooting.md#2-cant-use-volume-mount-get-permission-denied) for more details and instructions. |
|||||||
| 28 | ||||||||
|
29 | In our tests in `rocky:9 docker` configured the permissions even with setting the `:z` flag, please see the [docker documentation about bind mounts](https://docs.docker.com/engine/storage/bind-mounts/#configure-the-selinux-label) for more details. |
||||||
| 30 | ||||||||
| 31 | #### Caddy as reverse proxy provisioning TLS certificates |
|||||||
| 32 | ||||||||
| 33 | In an environment with `SELINUX=enforcing` where Caddy is used as reverse proxy, it was observed that it is necessary to run |
|||||||
| 34 | ```bash |
|||||||
| 35 | setsebool -P httpd_can_network_connect on |
|||||||
| 36 | ``` |
|||||||
| 37 | to enable Caddy to connect to the internet in order to provision proper TLS certificates. |
|||||||
|
38 | |||||||
|
39 | ### The wiki cannot be served from a subfolder |
||||||
| 40 | ||||||||
| 41 | An Otter Wiki requires a dedicated domain (e.g. `wiki.domain.tld`) and can not be mapped into a subfolder of a domain (e.g. `domain.tld/wiki`). See the requirements in [[Installation|Installation#requirements]]. |
|||||||
| 42 | ||||||||
|
43 | ## Errors |
||||||
| 44 | ||||||||
| 45 | ### 413 RequestEntityTooLarge |
|||||||
| 46 | ||||||||
|
47 | When An Otter Wiki raises the error 413 RequestEntityTooLarge please configure the variable `MAX_FORM_MEMORY_SIZE` which is in bytes and by default `1000000`, see [Configuration](/Configuration#content-and-editing-preferences). |
||||||
|
48 | |||||||
| 49 | ### Listen queue size is greater than the system max net.core.somaxconn |
|||||||
| 50 | ||||||||
| 51 | This was reported to happen when using the `-slim` image on a Synology NAS, see [#342](https://github.com/redimp/otterwiki/issues/342). This can be fixed with increasing the value via sysctl or when using a `docker-compose.yaml` with |
|||||||
| 52 | ||||||||
| 53 | ```yaml |
|||||||
| 54 | services: |
|||||||
| 55 | otterwiki: |
|||||||
| 56 | image: redimp/otterwiki:2-slim |
|||||||
| 57 | restart: unless-stopped |
|||||||
| 58 | ports: |
|||||||
|
59 | - 8080:8080 |
||||||
|
60 | volumes: |
||||||
| 61 | - ./app-data:/app-data |
|||||||
| 62 | sysctls: |
|||||||
| 63 | - net.core.somaxconn=1024 |
|||||||
| 64 | ``` |
|||||||
|
65 | |||||||
| 66 | ### Form submission fails after a tab was left open for a long time |
|||||||
| 67 | ||||||||
| 68 | Symptom: saving a page, logging in or submitting any other form fails after the tab had been open for a long time. Cause: the CSRF token expired. CSRF protection (from version **2.20.0**) is controlled by `WTF_CSRF_TIME_LIMIT`, which defaults to `86400` seconds (24 hours). If your users run into this regularly, raise the value, see [[Configuration|Configuration#security]]. Do not work around it by disabling `WTF_CSRF_ENABLED`, that turns off the CSRF protection entirely. |
|||||||
|
69 | |||||||
| 70 | ## Administration |
|||||||
| 71 | ||||||||
| 72 | ### I locked myself out |
|||||||
| 73 | ||||||||
| 74 | Symptom: nobody can log into an admin account any more, for example a forgotten admin password, a deleted admin user, or a mail server that is down so the password reset email never arrives. Fix: use the [[command line interface|CLI]], which needs neither a browser nor a working login. Generate a fresh password for your admin user: |
|||||||
| 75 | ||||||||
| 76 | ``` |
|||||||
| 77 | docker compose exec -u www-data otterwiki flask user password you@example.com --generate |
|||||||
| 78 | ``` |
|||||||
| 79 | ||||||||
| 80 | The command prints a new password to log in with. If no admin user is left, create one first with `flask user create you@example.com "You" -p admin`. See the [[CLI]] page for running these commands from a source install and for the full command reference. |
|||||||
