Update 'README.md'

This commit is contained in:
sn0w 2020-05-03 14:33:01 +00:00
parent b20f3875b9
commit 568f3a67f5

View File

@ -26,10 +26,10 @@ This repository dockerizes it for easier deployment.
## In the Wild ## In the Wild
My own instance is managed by this script.<br> My own instance is managed by this script.
Take a look at [hosted/pleroma](/hosted/pleroma) if you get stuck or need some inspiration. Take a look at [hosted/pleroma](/hosted/pleroma) if you get stuck or need some inspiration.
Does your instance use pleroma-docker?<br> Does your instance use pleroma-docker?
Let me know and I'll add you to this list. Let me know and I'll add you to this list.
## Docs ## Docs
@ -37,7 +37,7 @@ Let me know and I'll add you to this list.
These docs assume that you have at least a basic understanding These docs assume that you have at least a basic understanding
of the pleroma installation process and common docker commands. of the pleroma installation process and common docker commands.
If you have questions about Pleroma head over to https://docs.pleroma.social/.<br> If you have questions about Pleroma head over to https://docs.pleroma.social/.
For help with docker check out https://docs.docker.com/. For help with docker check out https://docs.docker.com/.
For other problems related to this script, contact me or open an issue :) For other problems related to this script, contact me or open an issue :)
@ -58,41 +58,37 @@ For other problems related to this script, contact me or open an issue :)
- [Configure a reverse-proxy](#my-instance-is-up-how-do-i-reach-it) - [Configure a reverse-proxy](#my-instance-is-up-how-do-i-reach-it)
- Profit! - Profit!
Hint:<br> Hint:
You can also use normal `docker-compose` commands to maintain your setup.<br> You can also use normal `docker-compose` commands to maintain your setup.
The only command that you cannot use is `docker-compose build` due to build caching. The only command that you cannot use is `docker-compose build` due to build caching.
### Configuration ### Configuration
All the pleroma options that you usually put into your `*.secret.exs` now go into `config.exs`. All the pleroma options that you usually put into your `*.secret.exs` now go into `config.exs`.
`.env` stores config values that need to be known at orchestration/build time.<br> `.env` stores config values that need to be known at orchestration/build time.
Documentation for the possible values is inside of that file. Documentation for the possible values is inside of that file.
### Updates ### Updates
Run `./pleroma.sh build` again and start the updated image with `./pleroma.sh up`. Run `./pleroma.sh build` again and start the updated image with `./pleroma.sh up`.
You don't need to stop your pleroma server for either of those commands. You don't need to stop your pleroma server for either of those commands.
### Maintenance ### Maintenance
Pleroma maintenance is usually done with mix tasks. Pleroma maintenance is usually done with mix tasks.
You can run these tasks in your running pleroma server using `./pleroma.sh mix [task] [arguments...]`. You can run these tasks in your running pleroma server using `./pleroma.sh mix [task] [arguments...]`.
For example: `./pleroma.sh mix pleroma.user new sn0w ...` For example: `./pleroma.sh mix pleroma.user new sn0w ...`
If you need to fix bigger problems you can also spawn a shell with `./pleroma.sh enter`. If you need to fix bigger problems you can also spawn a shell with `./pleroma.sh enter`.
### Customization ### Customization
Add your customizations (and their folder structure) to `custom.d/`.<br> Add your customizations (and their folder structure) to `custom.d/`.
They will be copied into the right place when the container starts.<br> They will be copied into the right place when the container starts.
You can even replace/patch pleromas code with this, You can even replace/patch pleromas code with this,
because the project is recompiled at startup if needed. because the project is recompiled at startup if needed.
In general: Prepending `custom.d/` to pleromas customization guides should work all the time.<br> In general: Prepending `custom.d/` to pleromas customization guides should work all the time.
Check them out in the [pleroma documentation](https://docs.pleroma.social/small_customizations.html#content). Check them out in the [pleroma documentation](https://docs.pleroma.social/small_customizations.html#content).
For example: A custom thumbnail now goes into `custom.d/` + `priv/static/instance/thumbnail.jpeg`. For example: A custom thumbnail now goes into `custom.d/` + `priv/static/instance/thumbnail.jpeg`.
@ -100,7 +96,6 @@ For example: A custom thumbnail now goes into `custom.d/` + `priv/static/instanc
### Patches ### Patches
Works exactly like customization, but we have a neat little helper here. Works exactly like customization, but we have a neat little helper here.
Use `./pleroma.sh mod [regex]` to mod any file that ships with pleroma, without having to type the complete path. Use `./pleroma.sh mod [regex]` to mod any file that ships with pleroma, without having to type the complete path.
### My instance is up, how do I reach it? ### My instance is up, how do I reach it?
@ -112,7 +107,7 @@ Older versions of this project contained a huge amount of scripting to support a
This newer version tries to focus only on providing good pleroma tooling. This newer version tries to focus only on providing good pleroma tooling.
That makes the whole process a bit more manual, but also more flexible. That makes the whole process a bit more manual, but also more flexible.
You can use Caddy, Traefik, Apache, nginx, or whatever else you come up with.<br> You can use Caddy, Traefik, Apache, nginx, or whatever else you come up with.
Just modify your `docker-compose.yml` accordingly. Just modify your `docker-compose.yml` accordingly.
One example would be to add an [nginx server](https://hub.docker.com/_/nginx) to your `docker-compose.yml`: One example would be to add an [nginx server](https://hub.docker.com/_/nginx) to your `docker-compose.yml`:
@ -136,7 +131,7 @@ Then take a look at [the pleroma nginx example](https://git.pleroma.social/plero
Using apache would work in a very similar way (see [Apache Docker Docs](https://hub.docker.com/_/httpd) and [the pleroma apache example](https://git.pleroma.social/pleroma/pleroma/blob/develop/installation/pleroma-apache.conf)). Using apache would work in a very similar way (see [Apache Docker Docs](https://hub.docker.com/_/httpd) and [the pleroma apache example](https://git.pleroma.social/pleroma/pleroma/blob/develop/installation/pleroma-apache.conf)).
The target that you proxy to is called `http://server:4000/`.<br> The target that you proxy to is called `http://server:4000/`.
This will work automagically when the proxy also lives inside of docker. This will work automagically when the proxy also lives inside of docker.
If you need help with this, or if you think that this needs more documentation, please let me know. If you need help with this, or if you think that this needs more documentation, please let me know.
@ -149,5 +144,5 @@ You can take a look at cofe's [compose yaml](/hosted/pleroma/src/branch/master/d
Thanks to [Angristan](https://github.com/Angristan/dockerfiles/tree/master/pleroma) and [RX14](https://github.com/RX14/kurisu.rx14.co.uk/blob/master/services/iscute.moe/pleroma/Dockerfile) for their dockerfiles, which served as an inspiration for the early versions of this script. Thanks to [Angristan](https://github.com/Angristan/dockerfiles/tree/master/pleroma) and [RX14](https://github.com/RX14/kurisu.rx14.co.uk/blob/master/services/iscute.moe/pleroma/Dockerfile) for their dockerfiles, which served as an inspiration for the early versions of this script.
The current version is based on the [offical install instructions](https://docs.pleroma.social/alpine_linux_en.html).<br> The current version is based on the [offical install instructions](https://docs.pleroma.social/alpine_linux_en.html).
Thanks to all people who contributed to those. Thanks to all people who contributed to those.