Browse Source

Add deploy script to prepare using docs.cloudron.io

keep-around/6f5c69fd1efcad488af9f9807f9d9e8dc860fcdd
Johannes Zellner 9 months ago
parent
commit
143babece3
  1. 1
      .gitignore
  2. 2
      cloudron_api_swagger.yaml
  3. 32
      deploy.sh
  4. 2052
      knowledgebase/docs/api.md
  5. 56
      knowledgebase/docs/apps.md
  6. 4
      knowledgebase/docs/apps/alltube.md
  7. 2
      knowledgebase/docs/apps/bitwardenrs.md
  8. 4
      knowledgebase/docs/apps/bookstack.md
  9. 6
      knowledgebase/docs/apps/build-service.md
  10. 4
      knowledgebase/docs/apps/codimd.md
  11. 12
      knowledgebase/docs/apps/collabora.md
  12. 2
      knowledgebase/docs/apps/commento.md
  13. 8
      knowledgebase/docs/apps/confluence.md
  14. 10
      knowledgebase/docs/apps/discourse.md
  15. 6
      knowledgebase/docs/apps/dokuwiki.md
  16. 8
      knowledgebase/docs/apps/element.md
  17. 4
      knowledgebase/docs/apps/emby.md
  18. 2
      knowledgebase/docs/apps/espocrm.md
  19. 8
      knowledgebase/docs/apps/etherpad.md
  20. 2
      knowledgebase/docs/apps/filepizza.md
  21. 2
      knowledgebase/docs/apps/firefly-iii.md
  22. 6
      knowledgebase/docs/apps/freescout.md
  23. 4
      knowledgebase/docs/apps/freshrss.md
  24. 2
      knowledgebase/docs/apps/geoip.md
  25. 14
      knowledgebase/docs/apps/ghost.md
  26. 4
      knowledgebase/docs/apps/gitea.md
  27. 2
      knowledgebase/docs/apps/githubpages.md
  28. 6
      knowledgebase/docs/apps/gitlab.md
  29. 4
      knowledgebase/docs/apps/gogs.md
  30. 4
      knowledgebase/docs/apps/grafana.md
  31. 4
      knowledgebase/docs/apps/grav.md
  32. 4
      knowledgebase/docs/apps/hastebin.md
  33. 10
      knowledgebase/docs/apps/invoiceninja.md
  34. 2
      knowledgebase/docs/apps/jellyfin.md
  35. 4
      knowledgebase/docs/apps/jingo.md
  36. 6
      knowledgebase/docs/apps/jupyterhub.md
  37. 6
      knowledgebase/docs/apps/kanboard.md
  38. 8
      knowledgebase/docs/apps/kimai.md
  39. 2
      knowledgebase/docs/apps/kopano-meet.md
  40. 42
      knowledgebase/docs/apps/lamp.md
  41. 2
      knowledgebase/docs/apps/letschat.md
  42. 4
      knowledgebase/docs/apps/limesurvey.md
  43. 4
      knowledgebase/docs/apps/lychee.md
  44. 4
      knowledgebase/docs/apps/mailtrain.md
  45. 8
      knowledgebase/docs/apps/mastodon.md
  46. 2
      knowledgebase/docs/apps/matomo.md
  47. 6
      knowledgebase/docs/apps/mattermost.md
  48. 2
      knowledgebase/docs/apps/mautic.md
  49. 14
      knowledgebase/docs/apps/mediawiki.md
  50. 2
      knowledgebase/docs/apps/meemo.md
  51. 2
      knowledgebase/docs/apps/metabase.md
  52. 2
      knowledgebase/docs/apps/minecraft.md
  53. 6
      knowledgebase/docs/apps/minio.md
  54. 6
      knowledgebase/docs/apps/monica.md
  55. 28
      knowledgebase/docs/apps/nextcloud.md
  56. 4
      knowledgebase/docs/apps/nodebb.md
  57. 6
      knowledgebase/docs/apps/onlyoffice.md
  58. 2
      knowledgebase/docs/apps/openproject.md
  59. 8
      knowledgebase/docs/apps/openvpn.md
  60. 4
      knowledgebase/docs/apps/osticket.md
  61. 12
      knowledgebase/docs/apps/owncloud.md
  62. 2
      knowledgebase/docs/apps/paperwork.md
  63. 4
      knowledgebase/docs/apps/peertube.md
  64. 4
      knowledgebase/docs/apps/phabricator.md
  65. 4
      knowledgebase/docs/apps/pixelfed.md
  66. 4
      knowledgebase/docs/apps/privatebin.md
  67. 2
      knowledgebase/docs/apps/radicale.md
  68. 8
      knowledgebase/docs/apps/rainloop.md
  69. 6
      knowledgebase/docs/apps/redash.md
  70. 6
      knowledgebase/docs/apps/redmine.md
  71. 2
      knowledgebase/docs/apps/releasebell.md
  72. 8
      knowledgebase/docs/apps/rocket.chat.md
  73. 22
      knowledgebase/docs/apps/roundcube.md
  74. 4
      knowledgebase/docs/apps/searx.md
  75. 2
      knowledgebase/docs/apps/shaarli.md
  76. 4
      knowledgebase/docs/apps/simple-torrent.md
  77. 4
      knowledgebase/docs/apps/snipe-it.md
  78. 14
      knowledgebase/docs/apps/sogo.md
  79. 2
      knowledgebase/docs/apps/statping.md
  80. 4
      knowledgebase/docs/apps/surfer.md
  81. 8
      knowledgebase/docs/apps/synapse.md
  82. 2
      knowledgebase/docs/apps/syncthing.md
  83. 10
      knowledgebase/docs/apps/taiga.md
  84. 4
      knowledgebase/docs/apps/teamspeak.md
  85. 6
      knowledgebase/docs/apps/thelounge.md
  86. 8
      knowledgebase/docs/apps/tinytinyrss.md
  87. 2
      knowledgebase/docs/apps/trilium.md
  88. 2
      knowledgebase/docs/apps/vault.md
  89. 4
      knowledgebase/docs/apps/verdaccio.md
  90. 4
      knowledgebase/docs/apps/wallabag.md
  91. 4
      knowledgebase/docs/apps/wekan.md
  92. 2
      knowledgebase/docs/apps/wikijs.md
  93. 22
      knowledgebase/docs/apps/wordpress-unmanaged.md
  94. 20
      knowledgebase/docs/apps/wordpress.md
  95. 8
      knowledgebase/docs/apps/yourls.md
  96. 2
      knowledgebase/docs/appstore.md
  97. 62
      knowledgebase/docs/backups.md
  98. 6
      knowledgebase/docs/branding.md
  99. 14
      knowledgebase/docs/certificates.md
  100. 16
      knowledgebase/docs/custom-apps/addons.md

1
.gitignore

@ -1,2 +1,3 @@
knowledgebase/site/
developer/site/
dist

2
cloudron_api_swagger.yaml

@ -905,7 +905,7 @@ paths:
example: My Cloudron
uiSpec:
type: object
description: See https://cloudron.io/documentation/hosting-provider/#customization
description: See https://docs.cloudron.io/hosting-provider/#customization
/appstore/register_cloudron:
post:
summary: Register Cloudron

32
deploy.sh

@ -0,0 +1,32 @@
#!/bin/bash
set -eu
TOKEN="${CLOUDRON_DOCS_SURFER_TOKEN:-}"
if [ -z "${TOKEN}" ]; then
echo "env var CLOUDRON_DOCS_SURFER_TOKEN is required"
exit 1
fi
SERVER="docs.public.cloudron.io"
echo "Cleaning up previous build"
rm -rf dist
mkdir -p dist
echo "Running tool update.sh"
./update.sh
echo "Building swagger apidocs"
redoc-cli bundle cloudron_api_swagger.yaml --output "dist/api.html" --title "Cloudron API Docs" --disableGoogleFont=true
echo "Building markdown docs"
cd knowledgebase
mkdocs build --dirty --site-dir "../dist/"
cd ..
echo "Deploying to ${SERVER}"
surfer put --server ${SERVER} --token ${TOKEN} dist/* /
echo "Done."

2052
knowledgebase/docs/api.md
File diff suppressed because it is too large
View File

56
knowledgebase/docs/apps.md

@ -6,7 +6,7 @@ Apps can be installed from the `App Store` menu item. Clicking on an app will di
information about the app.
<center>
<img src="/documentation/img/app_info.png" class="shadow" width="500px">
<img src="/img/app_info.png" class="shadow" width="500px">
</center>
<br/>
@ -14,7 +14,7 @@ information about the app.
Clicking the `Install` button will show an install dialog:
<center>
<img src="/documentation/img/app_install.png" class="shadow" width="500px">
<img src="/img/app_install.png" class="shadow" width="500px">
</center>
<br/>
@ -33,7 +33,7 @@ at `smartserver.space` in the picture above).
Clicking on the gear button will open the app's configure view.
<center>
<img src="/documentation/img/app-configure-button.png" class="shadow" width="250px">
<img src="/img/app-configure-button.png" class="shadow" width="250px">
</center>
## Change domain
@ -42,7 +42,7 @@ Changing the location field in the `Location` section of the app's configure UI
another domain or subdomain:
<center>
<img src="/documentation/img/app-location.png" class="shadow" width="500px">
<img src="/img/app-location.png" class="shadow" width="500px">
</center>
!!! note "No data loss"
@ -54,7 +54,7 @@ another domain or subdomain:
Redirections can be setup from the `Location` section in the app's configure UI:
<center>
<img src="/documentation/img/app-redirect.png" class="shadow" width="500px">
<img src="/img/app-redirect.png" class="shadow" width="500px">
</center>
In the above example, anyone visiting `chat2.cloudron.ml` or `chat3.smartserver.io` will be automatically
@ -71,7 +71,7 @@ and filter apps by customer name.
The label and tag of an app can be changed in the `Display` section of the app's configure UI:
<center>
<img src="/documentation/img/app-labels-and-tags.png" class="shadow" width="500px">
<img src="/img/app-labels-and-tags.png" class="shadow" width="500px">
</center>
## Memory limit
@ -88,7 +88,7 @@ The memory limit can be set by adjusting the slider in the `Resources` section
of the app's configure view.
<center>
<img src="/documentation/img/app-memory-slider.png" class="shadow" width="500px">
<img src="/img/app-memory-slider.png" class="shadow" width="500px">
</center>
!!! note "Memory limit includes swap"
@ -106,7 +106,7 @@ The CPU share can be set by adjusting the slider in the `Resources` section
of the app's configure view.
<center>
<img src="/documentation/img/app-cpu-share.png" class="shadow" width="500px">
<img src="/img/app-cpu-share.png" class="shadow" width="500px">
</center>
@ -122,7 +122,7 @@ done within the application itself. For example, changing a user to become a
`commenter` or `author` inside WordPress has to be done within WordPress.
<center>
<img src="/documentation/img/app-configure-group-acl.png" class="shadow" width="500px">
<img src="/img/app-configure-group-acl.png" class="shadow" width="500px">
</center>
* `Allow all users from this Cloudron` - Any user in the Cloudron can access the app.
@ -140,7 +140,7 @@ can control if an app appears in a user's dashboard using the `Dashboard Visibil
in the app's configure UI.
<center>
<img src="/documentation/img/apps-dashboard-visibility.png" class="shadow" width="500px">
<img src="/img/apps-dashboard-visibility.png" class="shadow" width="500px">
</center>
@ -150,13 +150,13 @@ For apps that can send and/or receive email, Cloudron automatically assigns an a
form `<location>.app`. To change this name, go to the `Email` section in the app's configure UI.
<center>
<img src="/documentation/img/apps-mailbox-name.png" class="shadow" width="500px">
<img src="/img/apps-mailbox-name.png" class="shadow" width="500px">
</center>
!!! note "Mailbox is not automatically created"
The app is simply configured to send mails with the above name. If you want to receive
email with the address, be sure to [create a mailbox](/documentation/email/#creating-mailboxes)
or assign it as an [alias](/documentation/email/#creating-mail-aliases) for an existing mailbox.
email with the address, be sure to [create a mailbox](/email/#creating-mailboxes)
or assign it as an [alias](/email/#creating-mail-aliases) for an existing mailbox.
If a mailbox with the name does not exist, any replies to the email will bounce.
## robots.txt
@ -170,7 +170,7 @@ The robots.txt contents of an app can be set in the `Security` section of the ap
By default, Cloudron does not setup a robots.txt for apps. When unset, the app is free to provide it's own robots.txt.
<center>
<img src="/documentation/img/app-robots-txt.png" class="shadow" width="500px">
<img src="/img/app-robots-txt.png" class="shadow" width="500px">
</center>
In addition, the Cloudron admin page has a hardcoded robots.txt that disables indexing:
@ -193,7 +193,7 @@ frame-ancestors site.example.com;
```
<center>
<img src="/documentation/img/app-security-csp.png" class="shadow" width="500px">
<img src="/img/app-security-csp.png" class="shadow" width="500px">
</center>
## Web terminal
@ -206,13 +206,13 @@ Cloudron runs apps as containers with a read-only file system. Only `/run` (dyna
The web terminal can be accessed from the `Console` section of the app's configure UI.
<center>
<img src="/documentation/img/app-terminal-button.png" class="shadow" width="400px">
<img src="/img/app-terminal-button.png" class="shadow" width="400px">
</center>
Clicking the icon will pop up a new window. The terminal is essentially a shell into the app's file system.
<center>
<img src="/documentation/img/terminal-exec2.png" class="shadow" width="500px">
<img src="/img/terminal-exec2.png" class="shadow" width="500px">
</center>
## File manager
@ -222,14 +222,14 @@ Cloudron provides a File Manager that be used to modify the app's file system fr
The File Manager can be accessed from the `Console` section of the app's configure UI.
<center>
<img src="/documentation/img/app-filemanager-button.png" class="shadow" width="400px">
<img src="/img/app-filemanager-button.png" class="shadow" width="400px">
</center>
Clicking the icon will pop up a new window. Note that there are action like Rename, Delete, Change Ownership
in the context menu.
<center>
<img src="/documentation/img/filemanager.png" class="shadow" width="500px">
<img src="/img/filemanager.png" class="shadow" width="500px">
</center>
## FTP access
@ -239,7 +239,7 @@ and uploaded using any SFTP client. The FTP connection information is displayed
`Access Control` section of the app's configure UI.
<center>
<img src="/documentation/img/app-sftp-info.png" class="shadow" width="500px">
<img src="/img/app-sftp-info.png" class="shadow" width="500px">
</center>
A SFTP client like [FileZilla](https://filezilla-project.org/) can be used to connect as follows:
@ -250,7 +250,7 @@ A SFTP client like [FileZilla](https://filezilla-project.org/) can be used to co
* `Port` - 222
<center>
<img src="/documentation/img/sftp-filezilla.png" class="shadow" width="500px">
<img src="/img/sftp-filezilla.png" class="shadow" width="500px">
</center>
!!! note "Port 222"
@ -264,13 +264,13 @@ A SFTP client like [FileZilla](https://filezilla-project.org/) can be used to co
To view the logs of an app, click the logs button on the app grid:
<center>
<img src="/documentation/img/app-logs-button.png" class="shadow" width="500px">
<img src="/img/app-logs-button.png" class="shadow" width="500px">
</center>
This will open up a popup dialog that display the logs:
<center>
<img src="/documentation/img/app-logs.png" class="shadow" width="500px">
<img src="/img/app-logs.png" class="shadow" width="500px">
</center>
## Uninstall
@ -278,14 +278,14 @@ This will open up a popup dialog that display the logs:
An app can be uninstalled clicking the `Uninstall` button in the app's configure UI.
<center>
<img src="/documentation/img/app-uninstall-button.png" class="shadow" width="500px">
<img src="/img/app-uninstall-button.png" class="shadow" width="500px">
</center>
Uninstalling an app immediately removes all data associated with the app from the Cloudron.
!!! note "Backups are not removed"
App backups are not removed when it is uninstalled and are only cleaned up based on the backup
policy. Apps can always be [re-instated](/documentation/backups/#restoring-an-app-from-existing-backup)
policy. Apps can always be [re-instated](/backups/#restoring-an-app-from-existing-backup)
from their backups using the CLI tool.
## Staging environment
@ -294,8 +294,8 @@ When doing website development, it is useful to have production and staging envi
backup and clone features can be used to create a workflow as follows:
* Install the app in `staging.example.com`. Do edits and development as desired.
* Once ready, make a 'snapshot' of the app by making an [app backup](/documentation/backups/#making-an-app-backup)
* Use the [clone UI](/documentation/backups/#cloning-a-cloudron-app-in-same-cloudron) to install the app
* Once ready, make a 'snapshot' of the app by making an [app backup](/backups/#making-an-app-backup)
* Use the [clone UI](/backups/#cloning-a-cloudron-app-in-same-cloudron) to install the app
into `prod.example.com`.
The same mechanism above can be used bring latest production data to staging.
@ -304,7 +304,7 @@ The same mechanism above can be used bring latest production data to staging.
The Graphs view shows an overview of the disk and memory usage on your Cloudron.
<img src="/documentation/img/graphs.png" class="shadow">
<img src="/img/graphs.png" class="shadow">
The `Disk Usage` graph shows you how much disk space you have left. Note that the Cloudron will
send the Cloudron admins an email notification when the disk is ~90% full.

4
knowledgebase/docs/apps/alltube.md

@ -1,7 +1,7 @@
# <img src="/documentation/img/alltube-logo.png" width="25px"> Alltube App
# <img src="/img/alltube-logo.png" width="25px"> Alltube App
## Customization
Use the [Web terminal](/documentation/apps#web-terminal)
Use the [Web terminal](/apps#web-terminal)
to edit custom configuration under `/app/data/config.yml`.

2
knowledgebase/docs/apps/bitwardenrs.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/bitwardenrs-logo.png" width="25px"> Bitwarden_rs App
# <img src="/img/bitwardenrs-logo.png" width="25px"> Bitwarden_rs App
This is the Rust implementation backend, *not* the official server backend, but fully compatible with the Client apps.

4
knowledgebase/docs/apps/bookstack.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/bookstack-logo.png" width="25px"> BookStack App
# <img src="/img/bookstack-logo.png" width="25px"> BookStack App
## Admin
@ -11,7 +11,7 @@ and the roles of rest of the users can be managed inside BookStack.
## Customization
Use the [Web terminal](/documentation/apps#web-terminal)
Use the [Web terminal](/apps#web-terminal)
to edit custom configuration under `/app/data/env`.
See [BookStack customization docs](https://www.bookstackapp.com/docs/admin/visual-customisation/)

6
knowledgebase/docs/apps/build-service.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/build-service-logo.png" width="25px"> Build Service App
# <img src="/img/build-service-logo.png" width="25px"> Build Service App
## Purpose
Cloudron can be used to build and install [custom apps](/documentation/custom-apps/tutorial/) using docker images.
Cloudron can be used to build and install [custom apps](/custom-apps/tutorial/) using docker images.
Building docker images locally might require many CPU resources depending on the app. Pushing docker images
can also be network intensive (for e.g, if you are working from a coffee shop).
@ -39,7 +39,7 @@ Step 2/8 : RUN mkdir -p /app/code
## Private registry auth
The build service requires authentication information to be able to push images to a private
registry. Credentials can be set by opening the [Web terminal](/documentation/apps#web-terminal)
registry. Credentials can be set by opening the [Web terminal](/apps#web-terminal)
and editing `/app/data/docker.json`:
```

4
knowledgebase/docs/apps/codimd.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/codimd-logo.png" width="25px"> CodiMD App
# <img src="/img/codimd-logo.png" width="25px"> CodiMD App
## Custom configuration
Use the [Web terminal](/documentation/apps#web-terminal)
Use the [Web terminal](/apps#web-terminal)
to place custom configuration under `/app/data/config.json`.
See [CodiMD docs](https://github.com/hackmdio/codimd/wiki/Configuration-Files-and-Application-Settings)

12
knowledgebase/docs/apps/collabora.md

@ -1,9 +1,9 @@
# <img src="/documentation/img/collabora-logo.png" width="25px"> Collabora App
# <img src="/img/collabora-logo.png" width="25px"> Collabora App
## Setup
The Collabora App can be used to provide rich document editing functionality for
files hosting inside [NextCloud](/documentation/apps/nextcloud).
files hosting inside [NextCloud](/apps/nextcloud).
* Install [NextCloud](/store/com.nextcloud.cloudronapp.html) from
the App Store. For this example, we assume NextCloud was installed at `nextcloud.smartserver.space`.
@ -12,18 +12,18 @@ files hosting inside [NextCloud](/documentation/apps/nextcloud).
* In the Collabora setup UI, provide the domain of the NextCloud installation.
<img src="/documentation/img/collabora-settings.png" class="shadow">
<img src="/img/collabora-settings.png" class="shadow">
* Enable the `Collabora Online` app in NextCloud. This app is under the `Office & text`
category in the NextCloud app store. Once installed, go to NextCloud `Settings` and
select the `Collabora Office` item on the left pane. Enter the domain of the collabora
installation.
<img src="/documentation/img/nextcloud-collabora.png" class="shadow">
<img src="/img/nextcloud-collabora.png" class="shadow">
* You should now be able to view and edit rich text documents right inside NextCloud.
<img src="/documentation/img/nextcloud-collabora-editor.png" class="shadow">
<img src="/img/nextcloud-collabora-editor.png" class="shadow">
## Spell check
@ -33,5 +33,5 @@ this reason, it might appear that the spell-checker is flagging a lot of spellin
The language of a document can be changed by clicking the menu bar icon on the far right (three
horizontal lines). Then `Tools` -> `Language` -> `For all text`.
<img src="/documentation/img/collabora-change-language.png" class="shadow">
<img src="/img/collabora-change-language.png" class="shadow">

2
knowledgebase/docs/apps/commento.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/commento-logo.png" width="25px"> Commento App
# <img src="/img/commento-logo.png" width="25px"> Commento App
Commento is a fast, privacy-focused commenting platform.

8
knowledgebase/docs/apps/confluence.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/confluence-logo.png" width="25px"> Confluence App
# <img src="/img/confluence-logo.png" width="25px"> Confluence App
## Completing the installation
@ -8,7 +8,7 @@ To finish the installation, do the following:
* Add your license key.
* Select `PostgreSQL` as External Database.
* Choose `By connection string`.
* Use the [log viewer](https://cloudron.io/documentation/apps/#log-viewer) to get database settings.
* Use the [log viewer](https://cloudron.io/apps/#log-viewer) to get database settings.
Look for a section called 'Datatabase Settings` in the logs.
## Adminstration check list
@ -19,13 +19,13 @@ To finish the installation, do the following:
* `Users & Security` -> `User directories`
* `Add Directory` -> `Internal with LDAP authentication`
* Use the [log viewer](https://cloudron.io/documentation/apps/#log-viewer) to get LDAP settings.
* Use the [log viewer](https://cloudron.io/apps/#log-viewer) to get LDAP settings.
* You can make Cloudron users admin once they log in to Confluence and appear in user listing via LDAP
* To configure mail:
* `Mail Servers` -> `Add SMTP mail`
* Use the [log viewer](https://cloudron.io/documentation/apps/#log-viewer) to get SMTP settings.
* Use the [log viewer](https://cloudron.io/apps/#log-viewer) to get SMTP settings.
## Oracle Java

10
knowledgebase/docs/apps/discourse.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/discourse-logo.png" width="25px"> Discourse App
# <img src="/img/discourse-logo.png" width="25px"> Discourse App
## Installing plugins
To install a plugin, open a [Web terminal](/documentation/apps#web-terminal) and run the following
To install a plugin, open a [Web terminal](/apps#web-terminal) and run the following
commands:
```
@ -25,7 +25,7 @@ The email of the root account is `root@cloudron.local`. Discourse sends an activ
email address to switch email. Since we don't have access to the default email account, we have to use
the rails console to switch the email.
Open a [Web terminal](/documentation/apps#web-terminal) and run the following commands:
Open a [Web terminal](/apps#web-terminal) and run the following commands:
```
# sudo -E -u cloudron bundle exec script/rails console
@ -40,7 +40,7 @@ irb(main):005:0> u.save!
When changing the domain of an existing discourse installation, Cloudron automatically
rebuilds the assets. However, the posts in the forum are not re-written. To rebake
the posts, open a [Web terminal](/documentation/apps#web-terminal) and run the following
the posts, open a [Web terminal](/apps#web-terminal) and run the following
command:
```
@ -50,7 +50,7 @@ sudo -E -u cloudron bundle exec ruby script/discourse remap old.domain.com new.d
## Rebaking posts
To rebuild all posts (for example, to apply formatting provided by a newly installed plugin to
old posts), open a [Web terminal](/documentation/apps#web-terminal) and run the following
old posts), open a [Web terminal](/apps#web-terminal) and run the following
command:
```

6
knowledgebase/docs/apps/dokuwiki.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/dokuwiki-logo.png" width="25px"> Dokuwiki App
# <img src="/img/dokuwiki-logo.png" width="25px"> Dokuwiki App
## User management
@ -7,7 +7,7 @@
When Cloudron SSO is enabled, only Cloudron users can login to the wiki and
edit pages.
To make a Cloudron user an admin, use the [Web terminal](/documentation/apps#web-terminal)
To make a Cloudron user an admin, use the [Web terminal](/apps#web-terminal)
and edit `/app/data/conf/local.php`:
```
@ -33,7 +33,7 @@ in dokuwiki's `Access Control List Management` admin page.
When not using Cloudron authentication, first register a new user.
To make the new user an admin, use the [Web terminal](/documentation/apps#web-terminal)
To make the new user an admin, use the [Web terminal](/apps#web-terminal)
and edit `/app/data/conf/local.php`:
```

8
knowledgebase/docs/apps/element.md

@ -1,21 +1,21 @@
# <img src="/documentation/img/element-logo.png" width="25px"> Element App
# <img src="/img/element-logo.png" width="25px"> Element App
## Setup
Element is a front end that lets you connect to Matrix home servers. See the [Synapse](/documentation/apps/synapse)
Element is a front end that lets you connect to Matrix home servers. See the [Synapse](/apps/synapse)
package for installing a home server.
This app is pre-configured to use the matrix installation at `matrix.yourdomain.com`.
For example, if you installed Element at `element.example.com`, the application is pre-configured
to use `matrix.example.com`.
You can change the homeserver location, by using a [Web Terminal](/documentation/apps/#web-terminal)
You can change the homeserver location, by using a [Web Terminal](/apps/#web-terminal)
and editing `/app/data/config.json`.
## Custom configuration
You can add custom Element configuration using the
[Web terminal](/documentation/apps#web-terminal):
[Web terminal](/apps#web-terminal):
* Add any custom configuration in `/app/data/config.json`.
* Restart the app

4
knowledgebase/docs/apps/emby.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/emby-logo.png" width="25px"> Emby App
# <img src="/img/emby-logo.png" width="25px"> Emby App
## Apps
@ -69,6 +69,6 @@ vainfo: Supported profile and entrypoints
transcoding.
<center>
<img src="/documentation/img/emby-active-devices.png" class="shadow">
<img src="/img/emby-active-devices.png" class="shadow">
</center>

2
knowledgebase/docs/apps/espocrm.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/espocrm-logo.png" width="25px"> EspoCRM App
# <img src="/img/espocrm-logo.png" width="25px"> EspoCRM App
## Admin access

8
knowledgebase/docs/apps/etherpad.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/etherpad-logo.png" width="25px"> Etherpad App
# <img src="/img/etherpad-logo.png" width="25px"> Etherpad App
## Installing plugins
@ -23,7 +23,7 @@ Additional admins can be added by adding their username to the `wp_cloudron.admi
```
When Cloudron SSO is disabled, an admin user can be created by adding users
to `settings.json`. Use the [Web terminal](/documentation/apps#web-terminal)
to `settings.json`. Use the [Web terminal](/apps#web-terminal)
to edit `/app/data/settings.json` and add or edit the following section:
```
@ -44,7 +44,7 @@ to edit `/app/data/settings.json` and add or edit the following section:
## Custom settings
Use a [Web terminal](/documentation/apps#web-terminal) and add any custom
Use a [Web terminal](/apps#web-terminal) and add any custom
settings to `/app/data/settings.json`.
!!! warning ""
@ -76,7 +76,7 @@ The app ships with the **colibris** theme/skin. This skin supports a dark mode t
## API Access
The [Etherpad API](http://etherpad.org/doc/v1.3.0/#index_http_api) can be accessed by
obtaining the APIKEY. For this, open a [Web terminal](/documentation/apps#web-terminal)
obtaining the APIKEY. For this, open a [Web terminal](/apps#web-terminal)
and view the contents of the file `/app/data/APIKEY.txt`.
Example usage:

2
knowledgebase/docs/apps/filepizza.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/filepizza-logo.png" width="25px"> File Pizza App
# <img src="/img/filepizza-logo.png" width="25px"> File Pizza App
## TURN Server

2
knowledgebase/docs/apps/firefly-iii.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/firefly-iii-logo.png" width="25px"> Firefly III App
# <img src="/img/firefly-iii-logo.png" width="25px"> Firefly III App
## Admin

6
knowledgebase/docs/apps/freescout.md

@ -1,11 +1,11 @@
# <img src="/documentation/img/freescout-logo.png" width="25px"> FreeScout App
# <img src="/img/freescout-logo.png" width="25px"> FreeScout App
## Mailbox Setup
Mailboxes do not need to be hosted on Cloudron itself. The app acts as a regular email client and thus can be setup for any IMAP mailbox.
For sending emails of a specific mailbox, the STMP method has to be selected as `php mail()` or `sendmail` wont work on Cloudron.
<img src="/documentation/img/freescout-smtp-settings.png" class="shadow">
<img src="/img/freescout-smtp-settings.png" class="shadow">
## Migration
@ -36,7 +36,7 @@ mysql --user=${CLOUDRON_MYSQL_USERNAME} --password=${CLOUDRON_MYSQL_PASSWORD} --
```
Now upload the `storage` folder which includes all attachment files.
Either using the [Cloudron CLI](/documentation/custom-apps/cli/) tool:
Either using the [Cloudron CLI](/custom-apps/cli/) tool:
```
cloudron push --app <newappdomain/appid> ./storage /app/data/
```

4
knowledgebase/docs/apps/freshrss.md

@ -1,11 +1,11 @@
# <img src="/documentation/img/freshrss-logo.png" width="25px"> FreshRSS
# <img src="/img/freshrss-logo.png" width="25px"> FreshRSS
## Installing Extensions
To install extensions, simply extract them to `/app/data/extensions` and restart
the app.
The [web terminal](/documentation/apps#web-terminal) can be used to upload and extract extensions.
The [web terminal](/apps#web-terminal) can be used to upload and extract extensions.
## Apps

2
knowledgebase/docs/apps/geoip.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/geoip-logo.png" width="25px"> GeoIP App
# <img src="/img/geoip-logo.png" width="25px"> GeoIP App
## About

14
knowledgebase/docs/apps/ghost.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/ghost-logo.png" width="25px"> Ghost App
# <img src="/img/ghost-logo.png" width="25px"> Ghost App
## Structured data
@ -16,7 +16,7 @@ by default.
For [privacy](https://github.com/TryGhost/Ghost/blob/master/PRIVACY.md) reasons, Gravatar functionality is disabled
by default. You can re-enable this by editing the `useGravatar` field in `/app/data/config.production.json` using
the [Web terminal](/documentation/apps#web-terminal). Be sure to restart the app after editing the config file.
the [Web terminal](/apps#web-terminal). Be sure to restart the app after editing the config file.
## Importing
@ -24,8 +24,8 @@ You can import content from another Ghost installation from Settings -> Labs ->
If the JSON file is large, the import might fail. To fix this:
* Give the app [more memory](/documentation/apps/#memory-limit) (say 2GB).
* Next, use the [Web terminal](/documentation/apps#web-terminal) to edit `/app/data/env` to adjust the NodeJS `max-old-space-size` limit.
* Give the app [more memory](/apps/#memory-limit) (say 2GB).
* Next, use the [Web terminal](/apps#web-terminal) to edit `/app/data/env` to adjust the NodeJS `max-old-space-size` limit.
Set it to 2GB using a line like this `export NODE_OPTIONS="--max-old-space-size=2048"`
* Restart Ghost and try the import again.
@ -39,18 +39,18 @@ To summarize the steps:
* Export old blog's content as json from the `settings` > `labs page` in Ghost-Admin
* Download the images and custom themes. On the Cloudron, the content location is
at `/app/data/content`. Use the [Web terminal's](/documentation/apps#web-terminal)
at `/app/data/content`. Use the [Web terminal's](/apps#web-terminal)
download button to download the contents as a `.tar.gz`.
* Install the new Cloudron Ghost app in a new subdomain
* Setup Ghost with a **different email address** than the one used in the old app, otherwise the user import will conflict.
* Import blog's json content from the `Labs` page
* Use the [Web terminal's](/documentation/apps#web-terminal) upload
* Use the [Web terminal's](/apps#web-terminal) upload
button to upload the images and themes to `/tmp`. Then, extract the tarball to `/app/data/content`
```
rm -rf /app/data/content/*
tar zxvf /tmp/content.tar.gz -C /app/data/content/
```
* Use [Web terminal's](/documentation/apps#web-terminal) restart button
* Use [Web terminal's](/apps#web-terminal) restart button
to restart the app
* Once everything looks fine, [uninstall](apps/#uninstall-an-app) the old app

4
knowledgebase/docs/apps/gitea.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/gitea-logo.png" width="25px"> Gitea App
# <img src="/img/gitea-logo.png" width="25px"> Gitea App
## Customizing Gitea
@ -9,7 +9,7 @@ templates, etc.
On Cloudron, the custom data folder is located at `/app/data/custom`.
Gitea also supports various [configuration customizations](https://docs.gitea.io/en-us/config-cheat-sheet/).
To add customizations, use the [Web terminal](/documentation/apps#web-terminal) and edit
To add customizations, use the [Web terminal](/apps#web-terminal) and edit
the file named `/app/data/app.ini`.
After editing, restart the app for the changes to take effect.

2
knowledgebase/docs/apps/githubpages.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/githubpages-logo.png" width="25px"> GitHub Pages App
# <img src="/img/githubpages-logo.png" width="25px"> GitHub Pages App
## Publishing pages

6
knowledgebase/docs/apps/gitlab.md

@ -1,9 +1,9 @@
# <img src="/documentation/img/gitlab-logo.png" width="25px"> GitLab App
# <img src="/img/gitlab-logo.png" width="25px"> GitLab App
## Custom gitlab.yml
GitLab is customized using GitLab's admin interface. Some options can ony be
changed in `gitlab.yml`. For such situations, use the [Web terminal's](/documentation/apps#web-terminal)
changed in `gitlab.yml`. For such situations, use the [Web terminal's](/apps#web-terminal)
and create a file named `/app/data/gitlab.yml`. This way custom configurations
will be preserved across updates and will also be backed up.
@ -97,7 +97,7 @@ Cloudron's GitLab package can be used with GitLab Runner as follows.
## Reset Admin Password
To reset the admin password, run the following commands using the [Web terminal](/documentation/apps#web-terminal):
To reset the admin password, run the following commands using the [Web terminal](/apps#web-terminal):
```
su - git

4
knowledgebase/docs/apps/gogs.md

@ -1,9 +1,9 @@
# <img src="/documentation/img/gogs-logo.png" width="25px"> Gogs App
# <img src="/img/gogs-logo.png" width="25px"> Gogs App
## Customizing Gogs
Gogs supports various [customizations](https://gogs.io/docs/advanced/configuration_cheat_sheet).
To add customizations, use the [Web terminal](/documentation/apps#web-terminal)) and
To add customizations, use the [Web terminal](/apps#web-terminal)) and
edit the file named `/app/data/app.ini`.
After editing, restart the app for the changes to take effect.

4
knowledgebase/docs/apps/grafana.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/grafana-logo.png" width="25px"> Grafana App
# <img src="/img/grafana-logo.png" width="25px"> Grafana App
## Customizations
@ -7,7 +7,7 @@ on the various configuration options.
## Installing plugins
To install plugins, you run the grafana CLI tool using the [Web Terminal](/documentation/apps#web-terminal).
To install plugins, you run the grafana CLI tool using the [Web Terminal](/apps#web-terminal).
For example,

4
knowledgebase/docs/apps/grav.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/grav-logo.png" width="25px"> Grav App
# <img src="/img/grav-logo.png" width="25px"> Grav App
## CLI
GPM and Grav commands can be executed by opening a [Web terminal](/documentation/apps#web-terminal):
GPM and Grav commands can be executed by opening a [Web terminal](/apps#web-terminal):
```
# cd /app/code

4
knowledgebase/docs/apps/hastebin.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/hastebin-logo.png" width="25px"> Hastebin App
# <img src="/img/hastebin-logo.png" width="25px"> Hastebin App
## Deleting pastes
Pastes never expire and have to be cleaned up manually. For this,
use a [Web terminal](/documentation/apps#web-terminal) and simply
use a [Web terminal](/apps#web-terminal) and simply
remove the pastes stored under `/app/data` as needed.

10
knowledgebase/docs/apps/invoiceninja.md

@ -1,14 +1,14 @@
# <img src="/documentation/img/invoiceninja-logo.png" width="25px"> Invoice Ninja App
# <img src="/img/invoiceninja-logo.png" width="25px"> Invoice Ninja App
## Customizations
InvoiceNinja customizations can be made by opening a [Web terminal](/documentation/apps#web-terminal)
InvoiceNinja customizations can be made by opening a [Web terminal](/apps#web-terminal)
and editing `/app/data/env`.
## Invoices
The app is pre-configured to send any invoices every 6 hours. To run the invoice
sending task manually, open a [Web terminal](/documentation/apps#web-terminal) and run:
sending task manually, open a [Web terminal](/apps#web-terminal) and run:
```
sudo -u www-data /usr/local/bin/php /app/code/artisan ninja:send-invoices
@ -21,7 +21,7 @@ is because running the send-reminders cron more than once a day would
[cause problems](https://github.com/invoiceninja/invoiceninja/issues/1921#issuecomment-368806883)
(duplicate late fees, etc.).
To run the reminders task manually, open a [Web terminal](/documentation/apps#web-terminal) and run:
To run the reminders task manually, open a [Web terminal](/apps#web-terminal) and run:
```
sudo -u www-data /usr/local/bin/php /app/code/artisan ninja:send-reminders
@ -33,7 +33,7 @@ Cron logs are stored in `/app/data/storage/logs/cron.log`.
## API Key
To get the API key, open a [Web terminal](/documentation/apps#web-terminal), and view
To get the API key, open a [Web terminal](/apps#web-terminal), and view
the contents of the file `/app/data/.env`.
```

2
knowledgebase/docs/apps/jellyfin.md

@ -1,3 +1,3 @@
# <img src="/documentation/img/jellyfin-logo.png" width="25px"> Jellyfin App
# <img src="/img/jellyfin-logo.png" width="25px"> Jellyfin App
No special usage information yet.

4
knowledgebase/docs/apps/jingo.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/jingo-logo.png" width="25px"> Jingo App
# <img src="/img/jingo-logo.png" width="25px"> Jingo App
## Custom configuration
Use the [Web terminal](/documentation/apps#web-terminal)
Use the [Web terminal](/apps#web-terminal)
to place custom configuration under `/app/data/config.yml`.
See [Jingo docs](https://github.com/claudioc/jingo#configuration-options-reference)

6
knowledgebase/docs/apps/jupyterhub.md

@ -1,11 +1,11 @@
# <img src="/documentation/img/jupyterhub-logo.png" width="25px"> JupyterHub App
# <img src="/img/jupyterhub-logo.png" width="25px"> JupyterHub App
## Selecting a notebook image
By default, the app uses the `jupyter/datascience-notebook`. The upstream Jupyterhub project
maintains many other [notebook images](https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html).
To use a different notebook image, use the [Web terminal](/documentation/apps#web-terminal)
To use a different notebook image, use the [Web terminal](/apps#web-terminal)
to place custom configuration under `/app/data/customconfig.py`. For example,
add a line like below:
@ -47,7 +47,7 @@ any libraries that were previously installed have to be re-installed.
## Other custom configuration
Use the [Web terminal](/documentation/apps#web-terminal)
Use the [Web terminal](/apps#web-terminal)
to place custom configuration under `/app/data/customconfig.py`.
See the [docs](https://github.com/jupyterhub/jupyterhub-deploy-docker#run-jupyterhub) for

6
knowledgebase/docs/apps/kanboard.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/kanboard-logo.png" width="25px"> Kanboard App
# <img src="/img/kanboard-logo.png" width="25px"> Kanboard App
## Installing plugins
@ -7,7 +7,7 @@ at `/app/data/plugins` directly.
Plugins can also be installed manually at `/app/data/plugins`.
* Open a [web terminal](/documentation/apps#web-terminal) for the app.
* Open a [web terminal](/apps#web-terminal) for the app.
* Upload the app .zip or .tar.gz to `/tmp` using the upload button
@ -20,5 +20,5 @@ Plugins can also be installed manually at `/app/data/plugins`.
## Custom configuration
Custom plugin configuration can be stored in `/app/data/customconfig.php`. To edit
the file, use the [web terminal](/documentation/apps#web-terminal) for the app.
the file, use the [web terminal](/apps#web-terminal) for the app.

8
knowledgebase/docs/apps/kimai.md

@ -1,11 +1,11 @@
# <img src="/documentation/img/kimai-logo.png" width="25px"> Kimai App
# <img src="/img/kimai-logo.png" width="25px"> Kimai App
## Plugins
Kimai2 supports both free and paid plugins or sometimes called bundles.
The [marketplace](https://www.kimai.org/store/) offers a selection of mostly paid plugins, while there are many free ones on github. Plugins can be obtained either through git checkout or downloading and extracting a zip bundle into `/app/data/plugins`.
The following example installes the demo plugin using the [Web terminal](/documentation/apps#web-terminal) into the running app instance:
The following example installes the demo plugin using the [Web terminal](/apps#web-terminal) into the running app instance:
```
cd /app/data/plugins
@ -17,10 +17,10 @@ sudo -u www-data bin/console kimai:reload
## Customization
Use the [Web terminal](/documentation/apps#web-terminal)
Use the [Web terminal](/apps#web-terminal)
to edit custom configuration under `/app/data/local.yaml`.
See [Kimai customization docs](https://www.kimai.org/documentation/configurations.html)
See [Kimai customization docs](https://www.kimai.org/configurations.html)
for more information.
Once the `local.yaml` is updated, restart the app from the Cloudron dashboard.

2
knowledgebase/docs/apps/kopano-meet.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/kopano-meet-logo.png" width="25px"> Kopano Meet App
# <img src="/img/kopano-meet-logo.png" width="25px"> Kopano Meet App
## TURN Server

42
knowledgebase/docs/apps/lamp.md

@ -1,10 +1,10 @@
# <img src="/documentation/img/lamp-logo.png" width="25px"> Lamp App
# <img src="/img/lamp-logo.png" width="25px"> Lamp App
## LAMP App on Cloudron
Running LAMP apps on the Cloudron is no different than what is available on
many hosting providers. You can upload your PHP code using SFTP or the
[Web terminal](/documentation/apps#web-terminal) and then modify
[Web terminal](/apps#web-terminal) and then modify
the .htaccess and php.ini files as required. Most commonly used
[PHP extensions](#php-extensions) are pre-installed and you don't have to worry
about keeping them up-to-date.
@ -27,15 +27,15 @@ The app can be uploaded using an SFTP client like [FileZilla](https://filezilla-
You can find the SFTP login details when clicking on the `i` icon in the app grid.
<center>
<img src="/documentation/img/lamp-filezilla.png" class="shadow">
<img src="/img/lamp-filezilla.png" class="shadow">
</center>
!!! note "SFTP Access"
SFTP access for non-admin users can be granted using the [access control UI](/documentation/apps/#restricting-app-access-to-specific-users).
SFTP access for non-admin users can be granted using the [access control UI](/apps/#restricting-app-access-to-specific-users).
### Web terminal
* Open a [web terminal](/documentation/apps#web-terminal) for the app.
* Open a [web terminal](/apps#web-terminal) for the app.
* Upload the app .zip or .tar.gz to `/tmp` using the upload button
@ -50,7 +50,7 @@ You can find the SFTP login details when clicking on the `i` icon in the app gri
## PHP settings
You can add custom [PHP settings](http://php.net/manual/en/ini.core.php) in `/app/data/public/.htaccess`
using the [Web terminal](/documentation/apps#web-terminal). Note that settings with a [mode](http://php.net/manual/en/configuration.changes.modes.php) of `PHP_INI_SYSTEM` cannot be set in htaccess files.
using the [Web terminal](/apps#web-terminal). Note that settings with a [mode](http://php.net/manual/en/configuration.changes.modes.php) of `PHP_INI_SYSTEM` cannot be set in htaccess files.
For example:
@ -67,7 +67,7 @@ php_value session.gc_maxlifetime 1200
## Apache settings
You can add custom [Apache settings](http://httpd.apache.org/docs/current/howto/htaccess.html) in `/app/data/public/.htaccess`
using the [Web terminal](/documentation/apps#web-terminal).
using the [Web terminal](/apps#web-terminal).
For example:
```
@ -126,7 +126,7 @@ Upload the extracted directory to the SFTP root directory (`/app/data`) of the C
(i.e one level above `public/`).
<center>
<img src="/documentation/img/lamp-upload-ioncube.png" class="shadow">
<img src="/img/lamp-upload-ioncube.png" class="shadow">
</center>
### Step 3: Enable extension
@ -144,14 +144,14 @@ The LAMP app has thread safety disabled, so we choose the extension without the
### Step 4: Restart app
Lastly, restart the app for the extension to be enabled. You can do this using the `Restart` button
in the [web terminal](/documentation/apps#web-terminal).
in the [web terminal](/apps#web-terminal).
### Step 5: Verifying installation
Visit the LAMP app's default page to verify that the extension is enabled.
<center>
<img src="/documentation/img/lamp-ioncube-installed.png" class="shadow">
<img src="/img/lamp-ioncube-installed.png" class="shadow">
</center>
## Configuring MySQL
@ -182,7 +182,7 @@ If the PHP app has a `config.php` that requires the MySQL credentials to be set,
```
Some apps show a setup screen and will require the raw MySQL credentials. For such apps, the MySQL
credentials can be obtained from the [Web terminal](/documentation/apps#web-terminal) by executing
credentials can be obtained from the [Web terminal](/apps#web-terminal) by executing
the following command:
```
@ -190,7 +190,7 @@ the following command:
```
<center>
<img src="/documentation/img/lamp-webterminal-mysql.png" class="shadow">
<img src="/img/lamp-webterminal-mysql.png" class="shadow">
</center>
**IMPORTANT:** Once the installation is completed, be sure to switch the config file of the app to use
@ -223,7 +223,7 @@ alongside with details how to managed more users.
<br/>
<center>
<img src="/documentation/img/lamp-phpmyadmin.png" class="shadow" height="300px">
<img src="/img/lamp-phpmyadmin.png" class="shadow" height="300px">
</center>
<br/>
@ -241,12 +241,12 @@ MAIL_SMTP_PORT # SMTP server port
MAIL_SMTPS_PORT # SMTPS server port. This is mostly for legacy apps
MAIL_SMTP_USERNAME # Username
MAIL_SMTP_PASSWORD # Password
MAIL_FROM # The MAIL FROM. If you want to change this, see [this](https://cloudron.io/documentation/apps/#mail-from-address)
MAIL_FROM # The MAIL FROM. If you want to change this, see [this](https://cloudron.io/apps/#mail-from-address)
MAIL_DOMAIN # The mail domain
```
You can use `getenv()` to get the values of the above environment variables in code. The raw values
can be obtained from the [Web terminal](/documentation/apps#web-terminal) by executing
can be obtained from the [Web terminal](/apps#web-terminal) by executing
the following command:
```
@ -309,7 +309,7 @@ REDIS_PASSWORD # redis password
```
You can use `getenv()` to get the values of the above environment variables in code. The raw values
can be obtained from the [Web terminal](/documentation/apps#web-terminal) by executing
can be obtained from the [Web terminal](/apps#web-terminal) by executing
the following command:
```
@ -335,12 +335,12 @@ ln -sf /run/cache /app/data/var/cache
For cron support, add a file named `/app/data/crontab` support.
The file can be edited using the [Web terminal](/documentation/apps#web-terminal)
The file can be edited using the [Web terminal](/apps#web-terminal)
or `FileZilla`.
<br/>
<center>
<img src="/documentation/img/lamp-filezilla-crontab.png" class="shadow" height="300px">
<img src="/img/lamp-filezilla-crontab.png" class="shadow" height="300px">
</center>
<br/>
@ -368,17 +368,17 @@ npm install
!!! note "Memory limit"
The LAMP app runs with 256MB ram by default which is not enough for Composer and possibly others. If you see a `Killed` error
message after a run, increase the [memory limit](https://cloudron.io/documentation/apps/#increasing-the-memory-limit-of-an-app)
message after a run, increase the [memory limit](https://cloudron.io/apps/#increasing-the-memory-limit-of-an-app)
of the app to 1GB.
## Laravel
To init a laravel app, you can use the [Web terminal](/documentation/apps#web-terminal) to shell into the app
To init a laravel app, you can use the [CLI tool](/custom-apps/cli/) to shell into the app
and run composer commands. If you have an existing Laravel app, you can skip this step and simply SFTP the app.
!!! note "Memory limit"
The LAMP app runs with 256MB ram by default which is not enough for Composer. We recommend increasing the
[memory limit](/documentation/apps/#increasing-the-memory-limit-of-an-app)
[memory limit](/apps/#increasing-the-memory-limit-of-an-app)
of the app to 1GB.
Switch to the `www-user` because the web server runs as that user.

2
knowledgebase/docs/apps/letschat.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/letschat-logo.png" width="25px"> Let's Chat App
# <img src="/img/letschat-logo.png" width="25px"> Let's Chat App
## External user registration

4
knowledgebase/docs/apps/limesurvey.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/limesurvey-logo.png" width="25px"> LimeSurvey App
# <img src="/img/limesurvey-logo.png" width="25px"> LimeSurvey App
## Command Line Tool
The CLI tool can run using the [Web Terminal](/documentation/apps#web-terminal) as follows:
The CLI tool can run using the [Web Terminal](/apps#web-terminal) as follows:
```
sudo -E -u www-data php /app/code/application/commands/console.php

4
knowledgebase/docs/apps/lychee.md

@ -1,9 +1,9 @@
# <img src="/documentation/img/lychee-logo.png" width="25px"> Lychee App
# <img src="/img/lychee-logo.png" width="25px"> Lychee App
## User management
While lychee has a UI to change the password, there is no UI to reset the password.
If you forget the password, reset the password of the admin user, use the [Web terminal](/documentation/apps#web-terminal).
If you forget the password, reset the password of the admin user, use the [Web terminal](/apps#web-terminal).
```
# sudo -E -u www-data php artisan lychee:reset_admin

4
knowledgebase/docs/apps/mailtrain.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/mailtrain-logo.png" width="25px"> Mailtrain App
# <img src="/img/mailtrain-logo.png" width="25px"> Mailtrain App
## VERP handling
@ -32,5 +32,5 @@ This will inject the Cloudrons SMTP credentials automatically.
## Customizations
Additional settings can be added to `/app/data/production.toml` using
the [Web terminal](/documentation/apps#web-terminal).
the [Web terminal](/apps#web-terminal).

8
knowledgebase/docs/apps/mastodon.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/mastodon-logo.png" width="25px"> Mastodon App
# <img src="/img/mastodon-logo.png" width="25px"> Mastodon App
## Admin
To make a user an administrator, use the [Web Terminal](https://cloudron.io/documentation/apps/#web-terminal)
To make a user an administrator, use the [Web Terminal](https://cloudron.io/apps/#web-terminal)
and run the following command:
```
@ -30,14 +30,14 @@ The setup for this is complicated and in most cases unnecessary. Mastodon accoun
be remembered like usernames (it's not like email where you can start following another account). Instead,
users usually visit a website and click the 'Follow' button.
That said, you can change the account domain name by using the [Web Terminal](https://cloudron.io/documentation/apps/#web-terminal)
That said, you can change the account domain name by using the [Web Terminal](https://cloudron.io/apps/#web-terminal)
and changing `LOCAL_DOMAIN` in `/app/data/env.production`.
After that, you have to configure `LOCAL_DOMAIN`'s web server to serve up `.well-known/host-meta` query.
### `LOCAL_DOMAIN` is an app on Cloudron
If `LOCAL_DOMAIN` is an app on Cloudron, you can use Cloudron's [Well Known URI](https://cloudron.io/documentation/apps/#well-known-uris)
If `LOCAL_DOMAIN` is an app on Cloudron, you can use Cloudron's [Well Known URI](https://cloudron.io/apps/#well-known-uris)
support. Just add this file to `/home/yellowtent/boxdata/well-known/example.org/host-meta`:
```

2
knowledgebase/docs/apps/matomo.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/piwik-logo.png" width="25px"> Matomo App
# <img src="/img/piwik-logo.png" width="25px"> Matomo App
## Installing plugins

6
knowledgebase/docs/apps/mattermost.md

@ -1,11 +1,11 @@
# <img src="/documentation/img/mattermost-logo.png" width="25px"> Mattermost App
# <img src="/img/mattermost-logo.png" width="25px"> Mattermost App
## Command Line Tool
The [Mattermost CLI tool](https://docs.mattermost.com/administration/command-line-tools.html) can be used
to administer user and team management tasks.
To use the CLI, open the [Web Terminal](/documentation/apps#web-terminal) and run the following command:
To use the CLI, open the [Web Terminal](/apps#web-terminal) and run the following command:
```
sudo -u cloudron /app/code/bin/mattermost --config=/app/data/config.json help
@ -23,7 +23,7 @@ the following:
sudo ./mattermost export bulk file.json --all-teams
```
* Install mattermost on Cloudron. Then use the [Web Terminal](/documentation/apps#web-terminal) to first upload
* Install mattermost on Cloudron. Then use the [Web Terminal](/apps#web-terminal) to first upload
the `file.json` above to the `/tmp` directory using the Upload button in the top of the Web terminal. Then,
import it using the following command:

2
knowledgebase/docs/apps/mautic.md

@ -1,3 +1,3 @@
# <img src="/documentation/img/mautic-logo.png" width="25px"> Mautic App
# <img src="/img/mautic-logo.png" width="25px"> Mautic App
The app has currently no special information.

14
knowledgebase/docs/apps/mediawiki.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/mediawiki-logo.png" width="25px"> MediaWiki App
# <img src="/img/mediawiki-logo.png" width="25px"> MediaWiki App
## Access Control
@ -14,7 +14,7 @@ registered wiki account.
### Changing permissions
Use the [Web terminal](/documentation/apps#web-terminal) to edit the values in
Use the [Web terminal](/apps#web-terminal) to edit the values in
`/app/data/LocalSettings.php`.
Here are some commonly requested settings:
@ -50,7 +50,7 @@ Sysops can perform a number of maintanence operations by vising `/wiki/Special:S
### Setting a custom icon
To set a custom icon, use the [Web terminal](/documentation/apps#web-terminal):
To set a custom icon, use the [Web terminal](/apps#web-terminal):
* Upload a file to '/tmp'
* In the web terminal, move the uploaded file to `/app/data/images/wiki.png`.
@ -62,7 +62,7 @@ To set a custom icon, use the [Web terminal](/documentation/apps#web-terminal):
MediaWiki [extensions](https://www.mediawiki.org/wiki/Manual:Extensions) can be installed
as follows:
* Use the [Web terminal](/documentation/apps#web-terminal) to upload the tarball to `/tmp`
* Use the [Web terminal](/apps#web-terminal) to upload the tarball to `/tmp`
* Extract the package under `/app/data/extensions` and run `chown -R www-data:www-data /app/data/extensions`
* Load the skin in `/app/data/LocalSettings.php` by adding this line:
```
@ -86,7 +86,7 @@ to `/app/data/LocalSettings.php`:
MediaWiki [skins](https://www.mediawiki.org/wiki/Manual:Gallery_of_user_styles) can be installed
as follows:
* Use the [Web terminal](/documentation/apps#web-terminal) to upload the tarball to `/tmp`
* Use the [Web terminal](/apps#web-terminal) to upload the tarball to `/tmp`
* Extract the package under `/app/data/skins` and run `chown -R www-data:www-data /app/data/skins`
* Load the skin in `/app/data/LocalSettings.php` by adding this line:
```
@ -109,7 +109,7 @@ to `/app/data/LocalSettings.php`:
## Exporting a Wiki
To export in XML format, use the [dumpBackup](https://www.mediawiki.org/wiki/Manual:DumpBackup.php) script as part of MediaWiki
installation. Open a [Web terminal](/documentation/apps#web-terminal) and run the following
installation. Open a [Web terminal](/apps#web-terminal) and run the following
commands:
```
@ -124,7 +124,7 @@ You can download the dump using the download button at the top of the terminal a
To import in XML format, use the [importDump](https://www.mediawiki.org/wiki/Manual:ImportDump.php) script as part of MediaWiki
installation.
Open a [Web terminal](/documentation/apps#web-terminal):
Open a [Web terminal](/apps#web-terminal):
* Upload the XML using the Upload button
* Run the following commands

2
knowledgebase/docs/apps/meemo.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/meemo-logo.png" width="25px"> Meemo App
# <img src="/img/meemo-logo.png" width="25px"> Meemo App
## Chrome extension

2
knowledgebase/docs/apps/metabase.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/metabase-logo.png" width="25px"> Metabase App
# <img src="/img/metabase-logo.png" width="25px"> Metabase App
Nothing here yet!

2
knowledgebase/docs/apps/minecraft.md

@ -1,4 +1,4 @@
# <img src="/documentation/img/minecraft-logo.png" width="25px"> Minecraft App
# <img src="/img/minecraft-logo.png" width="25px"> Minecraft App
# Supported editions

6
knowledgebase/docs/apps/minio.md

@ -1,8 +1,8 @@
# <img src="/documentation/img/minio-logo.png" width="25px"> MinIO App
# <img src="/img/minio-logo.png" width="25px"> MinIO App
## Admin credentials
To change admin credentials, use the [Web terminal](/documentation/apps#web-terminal) to edit
To change admin credentials, use the [Web terminal](/apps#web-terminal) to edit
the `credentials` section in `/app/data/data/.minio.sys/config/config.json`. Note that MinIO does
not save this JSON file with identation/formatting, making it hard to edit it. For this reason,
we have written a small script that is part of the package to edit it easily.
@ -29,7 +29,7 @@ Secret Key: NEWSECRETKEY
## Cloudron Backup
Cloudron supports [backing up to minio](https://cloudron.io/documentation/backups/#backing-up-to-minio).
Cloudron supports [backing up to minio](https://cloudron.io/backups/#backing-up-to-minio).
Backing up a Cloudron to a minio installed in another Cloudron will work fine. However, backing up a
Cloudron to a minio installed in the very same Cloudron is not supported.

6
knowledgebase/docs/apps/monica.md

@ -1,10 +1,10 @@
# <img src="/documentation/img/monica-logo.png" width="25px"> Monica App
# <img src="/img/monica-logo.png" width="25px"> Monica App
## Multiuser
By default, Monica is setup to be single user.
To enable user registration, open the [Web terminal](/documentation/apps#web-terminal) and add
To enable user registration, open the [Web terminal](/apps#web-terminal) and add
the following variable in `/app/data/env`:
```
APP_DISABLE_SIGNUP=false
@ -14,7 +14,7 @@ Refreshing the login page will now show a sign-up link in the login page.
## Mobile App
To enable the mobile app, open the [Web terminal](/documentation/apps#web-terminal) and run
To enable the mobile app, open the [Web terminal](/apps#web-terminal) and run
the following command:
```