mirror of
https://github.com/funkypenguin/geek-cookbook/
synced 2025-12-13 01:36:23 +00:00
@@ -5,11 +5,12 @@ icon: material/mastodon
|
||||
---
|
||||
# Toot me up, buttercup!
|
||||
|
||||
Mastondon is a self-hosted / open-source microblogging platform (*heavily inspired by Twitter*), which supports federation, rather than centralization. Like email, any user on any Mastodon instance can follow, "toot" (*not tweet!*), and reply to any user on any _other_ instance.
|
||||
Mastondon is a self-hosted / open-source microblogging platform (*heavily inspired by Twitter*), which supports federation, rather than centralization. Like email, any user on any Mastodon instance can follow, "toot" (*not tweet!*), and reply to any user on any *other* instance.
|
||||
|
||||
Our community Mastodon server is sooo [FKNY](https://so.fnky.nz/web/directory), but if you're already using Mastodon on another server (*or your [own instance][mastodon]*), you can seamlessly interact with us from there too, thanks to the magic of federation!
|
||||
|
||||
!!! question "This is dumb, there's nobody here"
|
||||
|
||||
* Give it time. The first time you get a federated reply from someone on another instance, it just "clicks" (*at least, it did for me*)
|
||||
* Follow some folks (I'm [funkypenguin@so.fnky.nz](https://so.fnky.nz/@funkypenguin))
|
||||
* Install [mobile client](https://joinmastodon.org/apps)
|
||||
@@ -17,7 +18,7 @@ Our community Mastodon server is sooo [FKNY](https://so.fnky.nz/web/directory),
|
||||
## How do I Mastodon?
|
||||
|
||||
1. If you're a [sponsor][github_sponsor], check the special `#mastodon` channel in [Discord][discord]. You'll find a super-sekrit invite URL which will get you setup *instantly*
|
||||
2. If you're *not* a sponsor, go to https://so.fnky.nz, and request an invite (*invites must be approved to prevent abuse*) - mention your [Discord][discord] username in the "Why do you want to join?" question.
|
||||
2. If you're *not* a sponsor, go to [FNKY](https://so.fnky.nz), and request an invite (*invites must be approved to prevent abuse*) - mention your [Discord][discord] username in the "Why do you want to join?" question.
|
||||
3. Start tootin'!
|
||||
|
||||
## So who do I follow?
|
||||
@@ -39,7 +40,7 @@ With the goal of creating a safe and inclusive community, we've adopted the [Con
|
||||
|
||||
To report a violation of our code of conduct in our Mastodon server, type use Mastodon's "report" function to report a violation, as illustrated below:
|
||||
|
||||
{ loading=lazy }
|
||||
{ loading=lazy }
|
||||
|
||||
Moderators will be alerted to your report, who will address the issue as detailed in the [enforcement guidelines](/community/code-of-conduct/#enforcement-guidelines).
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ In the [previous recipe](/kubernetes/persistence/rook-ceph/operator/), we deploy
|
||||
|
||||
We'll end up with multilpe storageClasses which we can use to allocate storage to pods from either Ceph RBD (*block storage*), or CephFS (*a mounted filesystem*). In many cases, CephFS is a useful choice, because it can be mounted from more than one pod **at the same time**, which makes it suitable for apps which need to share access to the same data ([NZBGet][nzbget], [Sonarr][sonarr], and [Plex][plex], for example)
|
||||
|
||||
|
||||
## Rook Ceph Cluster requirements
|
||||
|
||||
!!! summary "Ingredients"
|
||||
|
||||
@@ -100,7 +100,6 @@ pspEnable: false # (1)!
|
||||
|
||||
1. PSPs are deprecated, and will eventually be removed in Kubernetes 1.25, at which point this will cause breakage.
|
||||
|
||||
|
||||
### HelmRelease
|
||||
|
||||
Finally, having set the scene above, we define the HelmRelease which will actually deploy the rook-ceph operator into the cluster. I save this in my flux repo:
|
||||
|
||||
@@ -8,30 +8,29 @@ hide:
|
||||
|
||||
Recipe | Description | Date
|
||||
-------------------------|----------------------------------------------------------------------------------------------------------------------------------|--------------
|
||||
[Mastodon (K8s)][k8s/mastodon] | Kubernetes version of the Mastodon recipe below | _8 Aug 2022_
|
||||
[Mastodon][mastodon] | Federated social network. Think "*twitter but like email*" | _5 Aug 2022_
|
||||
[Kavita][kavita] | "Rocket-fueled" reader for manga/comics/ebooks, able to save reading position across devices/sessions | _27 Jul 2022_
|
||||
[Authelia][authelia] | Authentication and two factor authorization server with Authelia | _1 Nov 2021_
|
||||
[Prowlarr][prowlarr] | An indexer manager/proxy built on the popular arr .net/reactjs base stack to integrate with the [AutoPirate][autopirate] friends | _27 Oct 2021_
|
||||
[Archivebox][archivebox] | Website Archiving service to save websites to view offline | _19 Oct 2021_
|
||||
[Readarr][readarr] | [Autopirate][autopirate] component to grab and manage eBooks (*think "Sonarr/Radarr for books*") | _18 Oct 2021_
|
||||
|
||||
[Mastodon (K8s)][k8s/mastodon] | Kubernetes version of the Mastodon recipe below | *8 Aug 2022*
|
||||
[Mastodon][mastodon] | Federated social network. Think "*twitter but like email*" | *5 Aug 2022*
|
||||
[Kavita][kavita] | "Rocket-fueled" reader for manga/comics/ebooks, able to save reading position across devices/sessions | *27 Jul 2022*
|
||||
[Authelia][authelia] | Authentication and two factor authorization server with Authelia | *1 Nov 2021*
|
||||
[Prowlarr][prowlarr] | An indexer manager/proxy built on the popular arr .net/reactjs base stack to integrate with the [AutoPirate][autopirate] friends | *27 Oct 2021*
|
||||
[Archivebox][archivebox] | Website Archiving service to save websites to view offline | *19 Oct 2021*
|
||||
[Readarr][readarr] | [Autopirate][autopirate] component to grab and manage eBooks (*think "Sonarr/Radarr for books*") | *18 Oct 2021*
|
||||
|
||||
## Recent updates
|
||||
|
||||
Recipe | Description | Date
|
||||
----------------------------|------------------------------------------------------------------------------|--------------
|
||||
[Authelia][authelia] | Updated with test services, fixed errors | _27 Jul 2022_
|
||||
[Minio][minio] | Major update to Minio recipe, for new Console UI and Traefik v2 | _22 Oct 2021_
|
||||
[Traefik Forward Auth][tfa] | Major update for Traefik v2, included instructions for Dex, Google, Keycloak | _29 Jan 2021_
|
||||
[Autopirate][autopirate] | Updated all components for Traefik v2 labels | _29 Jan 2021_
|
||||
[Authelia][authelia] | Updated with test services, fixed errors | *27 Jul 2022*
|
||||
[Minio][minio] | Major update to Minio recipe, for new Console UI and Traefik v2 | *22 Oct 2021*
|
||||
[Traefik Forward Auth][tfa] | Major update for Traefik v2, included instructions for Dex, Google, Keycloak | *29 Jan 2021*
|
||||
[Autopirate][autopirate] | Updated all components for Traefik v2 labels | *29 Jan 2021*
|
||||
|
||||
## Recent reviews
|
||||
|
||||
Recipe | Description | Date
|
||||
------------------------|--------------|-------------
|
||||
[Mastodon][review/mastodon] | First review | _9 Aug 2022_
|
||||
[Immich][review/immich] | First review | _3 Aug 2022_
|
||||
[Mastodon][review/mastodon] | First review | *9 Aug 2022*
|
||||
[Immich][review/immich] | First review | *3 Aug 2022*
|
||||
|
||||
## Subscribe to updates
|
||||
|
||||
@@ -39,8 +38,8 @@ Recipe | Description | Date
|
||||
|
||||
Also available via:
|
||||
|
||||
* Mastodon: <https://mastodon.social/@geekcookbook_changes>
|
||||
* RSS: <https://mastodon.social/@geekcookbook_changes.rss>
|
||||
* Mastodon: <https://mastodon.social/@geekcookbook*changes>
|
||||
* RSS: <https://mastodon.social/@geekcookbook*changes.rss>
|
||||
* The #changelog channel in our [Discord server](http://chat.funkypenguin.co.nz)
|
||||
|
||||
--8<-- "common-links.md"
|
||||
|
||||
@@ -50,8 +50,6 @@ mkdir -p /var/data/runtime/mastodon/postgres
|
||||
!!! question "Why `/var/data/runtime/mastodon` and not just `/var/data/mastodon`?"
|
||||
The data won't be able to be backed up by a regular filesystem backup, because it'll be in use. We still need to store it **somewhere** though, so we use `/var/data/runtime`, which is excluded from automated backups. See [Data Layout](/reference/data_layout/) for details.
|
||||
|
||||
|
||||
|
||||
### Setup Mastodon enviroment
|
||||
|
||||
Create `/var/data/config/mastodon/mastodon.env` something like the example below..
|
||||
@@ -353,7 +351,7 @@ docker-compose -f mastodon.yml down
|
||||
|
||||
The output should look like this:
|
||||
|
||||
```
|
||||
```bash
|
||||
root@raphael:/var/data/config/mastodon# docker-compose -f mastodon.yml down
|
||||
WARNING: Some services (streaming, web) use the 'deploy' key, which will be ignored. Compose does not support 'deploy' configuration - use `docker stack deploy` to deploy to a swarm.
|
||||
Stopping mastodon_streaming_1 ... done
|
||||
@@ -373,7 +371,7 @@ root@raphael:/var/data/config/mastodon#
|
||||
|
||||
## :material-mastodon: Launch Mastodon!
|
||||
|
||||
Launch the Mastodon stack by running
|
||||
Launch the Mastodon stack by running:
|
||||
|
||||
```bash
|
||||
docker stack deploy mastodon -c /var/data/config/mastodon/mastodon.yml
|
||||
@@ -386,7 +384,6 @@ Once you're done, "toot" me by mentioning [funkypenguin@so.fnky.nz](https://so.f
|
||||
!!! tip
|
||||
If your instance feels lonely, try using some [relays](https://github.com/brodi1/activitypub-relays) to bring in the federated firehose!
|
||||
|
||||
|
||||
## Summary
|
||||
|
||||
What have we achieved? Even though we had to jump through some extra hoops to setup database and users, we now have a fully-swarmed Mastodon instance, ready to federate with the world! :material-mastodon:
|
||||
|
||||
Reference in New Issue
Block a user