mirror of
https://github.com/correl/docker-pleroma.git
synced 2024-11-27 03:00:06 +00:00
Explain how to use the new dynamic config (#50)
* Explain how to use the new dynamic config introduced in #25 * fix typo
This commit is contained in:
parent
09fa1e81e3
commit
883a3cb1fa
2 changed files with 15 additions and 61 deletions
72
README.md
72
README.md
|
@ -66,8 +66,10 @@ services:
|
||||||
- ./uploads:/var/lib/pleroma/uploads
|
- ./uploads:/var/lib/pleroma/uploads
|
||||||
- ./static:/var/lib/pleroma/static
|
- ./static:/var/lib/pleroma/static
|
||||||
- ./config.exs:/etc/pleroma/config.exs:ro
|
- ./config.exs:/etc/pleroma/config.exs:ro
|
||||||
|
# optional, see 'Config Override' section in README.md
|
||||||
|
# - ./config-override.exs:/var/lib/pleroma/config.exs:ro
|
||||||
environment:
|
environment:
|
||||||
DOMAIN: exmaple.com
|
DOMAIN: example.com
|
||||||
INSTANCE_NAME: Pleroma
|
INSTANCE_NAME: Pleroma
|
||||||
ADMIN_EMAIL: admin@example.com
|
ADMIN_EMAIL: admin@example.com
|
||||||
NOTIFY_EMAIL: notify@example.com
|
NOTIFY_EMAIL: notify@example.com
|
||||||
|
@ -93,45 +95,7 @@ docker exec -i pleroma_db psql -U pleroma -c "CREATE EXTENSION IF NOT EXISTS cit
|
||||||
docker-compose down
|
docker-compose down
|
||||||
```
|
```
|
||||||
|
|
||||||
Configure Pleroma. Copy the following to `config/secret.exs`:
|
Optionally configure Pleroma, see [Config Override](#config-override).
|
||||||
|
|
||||||
```exs
|
|
||||||
use Mix.Config
|
|
||||||
|
|
||||||
config :pleroma, Pleroma.Web.Endpoint,
|
|
||||||
http: [ ip: {0, 0, 0, 0}, ],
|
|
||||||
url: [host: "pleroma.domain.tld", scheme: "https", port: 443],
|
|
||||||
secret_key_base: "<use 'openssl rand -base64 48' to generate a key>"
|
|
||||||
|
|
||||||
config :pleroma, :instance,
|
|
||||||
name: "Pleroma",
|
|
||||||
email: "admin@email.tld",
|
|
||||||
limit: 5000,
|
|
||||||
registrations_open: true
|
|
||||||
|
|
||||||
config :pleroma, :media_proxy,
|
|
||||||
enabled: false,
|
|
||||||
redirect_on_failure: true,
|
|
||||||
base_url: "https://cache.domain.tld"
|
|
||||||
|
|
||||||
# Configure your database
|
|
||||||
config :pleroma, Pleroma.Repo,
|
|
||||||
adapter: Ecto.Adapters.Postgres,
|
|
||||||
username: "pleroma",
|
|
||||||
password: "pleroma",
|
|
||||||
database: "pleroma",
|
|
||||||
hostname: "postgres",
|
|
||||||
pool_size: 10
|
|
||||||
```
|
|
||||||
|
|
||||||
You need to change at least:
|
|
||||||
|
|
||||||
- `host`
|
|
||||||
- `secret_key_base`
|
|
||||||
- `email`
|
|
||||||
|
|
||||||
Make sure your PostgreSQL parameters are ok.
|
|
||||||
|
|
||||||
You can now build the image. 2 way of doing it:
|
You can now build the image. 2 way of doing it:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
@ -142,33 +106,13 @@ docker build -t pleroma .
|
||||||
|
|
||||||
I prefer the latter because it's more verbose but this will ignore any build-time variables you have set in `docker-compose.yml`.
|
I prefer the latter because it's more verbose but this will ignore any build-time variables you have set in `docker-compose.yml`.
|
||||||
|
|
||||||
Setup the database:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
docker-compose run --rm web mix ecto.migrate
|
|
||||||
```
|
|
||||||
|
|
||||||
Get your web push keys and copy them to `secret.exs`:
|
|
||||||
|
|
||||||
```
|
|
||||||
docker-compose run --rm web mix web_push.gen.keypair
|
|
||||||
```
|
|
||||||
|
|
||||||
You will need to build the image again, to pick up your updated `secret.exs` file:
|
|
||||||
|
|
||||||
```
|
|
||||||
docker-compose build
|
|
||||||
# or
|
|
||||||
docker build -t pleroma .
|
|
||||||
```
|
|
||||||
|
|
||||||
You can now launch your instance:
|
You can now launch your instance:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
docker-compose up -d
|
docker-compose up -d
|
||||||
```
|
```
|
||||||
|
|
||||||
Check if everything went well with:
|
The initial creation of the database schema will be done automatically. Check if everything went well with:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
docker logs -f pleroma_web
|
docker logs -f pleroma_web
|
||||||
|
@ -209,6 +153,12 @@ docker build -t pleroma . --build-arg PLEROMA_VER=v2.0.7 # a version
|
||||||
|
|
||||||
This value can also be set through `docker-compose.yml` as seen in the example file provided in this repository.
|
This value can also be set through `docker-compose.yml` as seen in the example file provided in this repository.
|
||||||
|
|
||||||
|
## Config Override
|
||||||
|
By default the provided `docker-compose.yml` file mounts `config.exs` in the Pleroma container, this file is a dynamic configuration that sources some values from the environment variables provided to the container (variables like `ADMIN_EMAIL` etc.).
|
||||||
|
|
||||||
|
For those that want to change configuration that is not exposed through environment variables there is the option to mount the `config-override.exs` file which can than be modified to your satisfaction. Values set in this file will override anything set in `config.exs`. The override file provided in this repository disables new registrations on your instance, as an example.
|
||||||
|
=======
|
||||||
|
|
||||||
## Other Docker images
|
## Other Docker images
|
||||||
|
|
||||||
Here are other Pleroma Docker images that helped me build mine:
|
Here are other Pleroma Docker images that helped me build mine:
|
||||||
|
|
4
config-override.exs
Normal file
4
config-override.exs
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
import config
|
||||||
|
|
||||||
|
config :pleroma, :instance,
|
||||||
|
registrations_open: false
|
Loading…
Reference in a new issue