From 7234cee371fadd2b868a0fc1c3ab4d59d3e2f4f4 Mon Sep 17 00:00:00 2001 From: sn0w Date: Sun, 25 Aug 2019 23:59:29 +0200 Subject: [PATCH] Update docs and add mnesia --- Dockerfile | 2 +- README.md | 54 ++++++++++++++++++++++++++++-------------------------- 2 files changed, 29 insertions(+), 27 deletions(-) diff --git a/Dockerfile b/Dockerfile index ed96195..f5e33e7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -30,7 +30,7 @@ RUN \ apk add --no-cache --virtual .runtime \ imagemagick \ elixir erlang erlang-runtime-tools \ - erlang-xmerl erlang-ssl erlang-ssh erlang-eldap + erlang-xmerl erlang-ssl erlang-ssh erlang-eldap erlang-mnesia # Add entrypoint COPY ./entrypoint.sh / diff --git a/README.md b/README.md index 640a326..e79dcc1 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ For other problems related to this script, contact me or open an issue :) ### Prerequisites -- ~500mb of free HDD space +- ~1GB of free HDD space - `git` if you want smart build caches - `curl`, `jq`, and `dialog` if you want to use `./pleroma.sh mod` - Bash 4+ @@ -60,6 +60,13 @@ Hint:
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. +### 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.
+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`. @@ -69,11 +76,31 @@ 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...]`. + If you need to fix some bigger issues you can also spawn a shell with `./pleroma.sh enter`. For example: `/pleroma.sh mix pleroma.user new sn0w ...` +### 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. + +In general: Prepending `custom.d/` to pleroma’s customization guides should work all the time.
+Check them out in the official pleroma wiki. + +For example: A custom thumbnail now goes into `custom.d/` + `priv/static/instance/thumbnail.jpeg`. + +### Patches + +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. + ### My instance is up, how do I reach it? To reach Gopher or SSH, just uncomment the port-forward in your `docker-compose.yml`. @@ -116,31 +143,6 @@ Something that cofe.rocks uses is simple port-forwarding of the `server` contain From there on, the natively installed nginx server acts as a proxy to the open internet. You can take a look at [this file](https://glitch.sh/hosted/pleroma/src/commit/4e88d93276f0bb2ef62d7f18477b156318924325/docker-compose.m4#L93) and [cofe's proxy config](https://glitch.sh/hosted/pleroma/src/commit/4e88d93276f0bb2ef62d7f18477b156318924325/proxy.xconf) if that setup sounds interesting. -### 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. - -In general: Prepending `custom.d/` to pleroma’s customization guides should work all the time.
-Check them out in the official pleroma wiki. - -For example: A custom thumbnail now goes into `custom.d/` + `priv/static/instance/thumbnail.jpeg`. - -### Patches - -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. - -### 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.
-Documentation for the possible values is inside of that file. - ### Attribution 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.