Compare commits
2 Commits
c8411e848c
...
a80d553d09
Author | SHA1 | Date | |
---|---|---|---|
|
a80d553d09 | ||
|
298b6a3acc |
49
README.md
49
README.md
@ -26,10 +26,15 @@ This repository dockerizes it for easier deployment.
|
||||
|
||||
## In the Wild
|
||||
|
||||
My own instance is managed by this script.
|
||||
`cofe.rocks` is always managed by this script.<br/>
|
||||
Take a look at [hosted/pleroma](/hosted/pleroma) if you get stuck or need some inspiration.
|
||||
|
||||
Does your instance use pleroma-docker?
|
||||
Additionally it's known to run on (in no particular order):
|
||||
- social.interhop.org
|
||||
- social.technodruide.ca
|
||||
- toot.poto.cafe
|
||||
|
||||
Does your instance use pleroma-docker?<br/>
|
||||
Let me know and I'll add you to this list.
|
||||
|
||||
## Docs
|
||||
@ -59,55 +64,53 @@ For other problems related to this script, contact me or open an issue :)
|
||||
- Profit!
|
||||
|
||||
Hint:
|
||||
You can also use normal `docker-compose` commands to maintain your setup.
|
||||
You can also use normal `docker-compose` commands to maintain your setup.<br/>
|
||||
The only command that you cannot use is `docker-compose build` due to build caching.
|
||||
|
||||
### Configuration
|
||||
|
||||
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.
|
||||
All the pleroma options that you usually put into your `*.secret.exs` now go into `config.exs`.<br/>
|
||||
`.env` stores config values that need to be known at orchestration/build time.<br/>
|
||||
Documentation for the possible values is inside of that file.
|
||||
|
||||
### 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`.<br/>
|
||||
You don't need to stop your pleroma server for either of those commands.
|
||||
|
||||
### Maintenance
|
||||
|
||||
Pleroma maintenance is usually done with mix tasks.
|
||||
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 ...`
|
||||
Pleroma maintenance is usually done with mix tasks.<br/>
|
||||
You can run these tasks in your running pleroma server using `./pleroma.sh mix [task] [arguments...]`.<br/>
|
||||
For example: `./pleroma.sh mix pleroma.user new sn0w ...`<br/>
|
||||
If you need to fix bigger problems you can also spawn a shell with `./pleroma.sh enter`.
|
||||
|
||||
### Customization
|
||||
|
||||
Add your customizations (and their folder structure) to `custom.d/`.
|
||||
They will be copied into the right place when the container starts.
|
||||
You can even replace/patch pleroma’s code with this,
|
||||
because the project is recompiled at startup if needed.
|
||||
Add your customizations (and their folder structure) to `custom.d/`.<br/>
|
||||
They will be copied into the right place when the container starts.<br/>
|
||||
You can even replace/patch pleroma’s code with this, because the project is recompiled at startup if needed.
|
||||
|
||||
In general: Prepending `custom.d/` to pleroma’s customization guides should work all the time.
|
||||
In general: Prepending `custom.d/` to pleroma’s customization guides should work all the time.<br/>
|
||||
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/` + `instance/static/instance/thumbnail.jpeg`.
|
||||
|
||||
### 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.<br/>
|
||||
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?
|
||||
|
||||
To reach Gopher or SSH, just uncomment the port-forward in your `docker-compose.yml`.
|
||||
|
||||
To reach HTTP you will have to configure a "reverse-proxy".
|
||||
Older versions of this project contained a huge amount of scripting to support all kinds of reverse-proxy setups.
|
||||
This newer version tries to focus only on providing good pleroma tooling.
|
||||
To reach HTTP you will have to configure a "reverse-proxy".<br/>
|
||||
Older versions of this project contained a huge amount of scripting to support all kinds of reverse-proxy setups.<br/>
|
||||
This newer version tries to focus only on providing good pleroma tooling.<br/>
|
||||
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.
|
||||
You can use Caddy, Traefik, Apache, nginx, or whatever else you come up with.<br/>
|
||||
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`:
|
||||
@ -131,13 +134,13 @@ 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)).
|
||||
|
||||
The target that you proxy to is called `http://server:4000/`.
|
||||
The target that you proxy to is called `http://server:4000/`.<br/>
|
||||
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.
|
||||
|
||||
Something that cofe.rocks uses is simple port-forwarding of the `server` container to the host's `127.0.0.1`.
|
||||
From there on, the natively installed nginx server acts as a proxy to the open internet.
|
||||
Something that cofe.rocks uses is simple port-forwarding of the `server` container to the host's `127.0.0.1`.<br/>
|
||||
From there on, the natively installed nginx server acts as a proxy to the open internet.<br/>
|
||||
You can take a look at cofe's [compose yaml](/hosted/pleroma/src/branch/master/docker-compose.yml) and [proxy config](/hosted/pleroma/src/branch/master/proxy.xconf) if that setup sounds interesting.
|
||||
|
||||
### Attribution
|
||||
|
Loading…
Reference in New Issue
Block a user