diff --git a/Guides.md b/Guides.md index 50650f9..671315a 100644 --- a/Guides.md +++ b/Guides.md @@ -162,4 +162,16 @@ REVOLT__API__SECURITY__TENOR_KEY='' Restart the stoat-gifbox service by running `docker compose down gifbox && docker compose up -d gifbox`. -The gifpicker should now work. \ No newline at end of file +The gifpicker should now work. + +## Connecting with Official Clients + +> [!TIP] +> Some unofficial clients support self-hosted instances. You can see a list of unofficial clients at [awesome-stoat](https://github.com/stoatchat/awesome-stoat). Unless stated, these are not officially endorsed. Proceed at your own risk. + +Currently, most clients do not support self-hosted instances that well. Herein are guides to connecting with each of the official apps that support self-hosted instances: + +### Stoat Desktop App + +The Stoat Desktop App supports self-hosted instances. To configure the app for self-hosted, you must launch the app with the `--force-server=https://your.domain` command line flag. You cannot have multiple clients running, as launching the app while another copy is running will result in nothing happening. + diff --git a/README.md b/README.md index 3716add..6724c51 100644 --- a/README.md +++ b/README.md @@ -15,17 +15,9 @@ Self-hosting Stoat using Docker This repository contains configurations and instructions that can be used for deploying a full instance of Stoat, including the back-end, web front-end, file server, and metadata and image proxy. -> [!WARNING] -> If you are updating an instance from before February 28, 2026, please consult the [notices section](#notices) at the bottom. - -> [!IMPORTANT] -> A list of security advisories is [provided at the bottom](#security-advisories). - -> [!NOTE] -> Please consult _[What can I do with Stoat and how do I self-host?](https://developers.stoat.chat/faq)_ on our developer site for information about licensing and brand use. - ## Table of Contents +- [Disclaimers and Information](#disclaimers-and-information) - [Deployment](#deployment) - [Securing your server](#securing-your-server) - [Configuring your domain](#configuring-your-domain) @@ -43,6 +35,23 @@ This repository contains configurations and instructions that can be used for de - [Security Advisories](#security-advisories) - [Guides](Guides.md) +## Disclaimers and Information + +> [!WARNING] +> If you are updating an instance from before February 28, 2026, please consult the [notices section](#notices) at the bottom. + +> [!IMPORTANT] +> A list of security advisories is [provided at the bottom](#security-advisories). + +> [!NOTE] +> Currently, most official clients do not support self-hosted instances. The web client works well, and when you use the [PWA](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Guides/What_is_a_progressive_web_app) the experience is close to a native app. For more instructions regarding clients please see the [Guides](Guides.md) section of the readme. + +> [!NOTE] +> Please consult _[What can I do with Stoat and how do I self-host?](https://developers.stoat.chat/faq)_ on our developer site for information about licensing and brand use. + +> [!TIP] +> For guides on how to perform common configuration alterations like using NGINX or setting your instance to invite only, see the [Guides](Guides.md) section of the readme. + ## Deployment To get started, find yourself a suitable server to deploy onto, we recommend starting with at least 2 vCPUs and 2 GB of memory. @@ -127,10 +136,18 @@ Your domain (or a subdomain) should point to the server's IP (A and AAAA records ### Install required dependencies + ```bash -# ensure Git and Docker are installed +# ensure Git is installed apt-get update apt-get install ca-certificates curl git micro +``` + +> [!NOTE] +> Installing docker is different per platform and this guide only covers installing on Ubuntu Server. You can find more about installing docker on other platforms [here](https://docs.docker.com/engine/install/). + +```bash +# install docker install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc chmod a+r /etc/apt/keyrings/docker.asc