Browse Source

Merge branch 'v1.1' of https://git.in-ulm.de/ulpeters/ejabberd into ls

admin 1 year ago
parent
commit
0be8f14117
2 changed files with 22 additions and 8 deletions
  1. 1 1
      EXTRAS/reference-configurations/README.md
  2. 21 7
      README.md

+ 1 - 1
EXTRAS/reference-configurations/README.md

@@ -11,7 +11,7 @@
   - [ejabberd_template.yml](ejabberd_template.yml) from: https://raw.githubusercontent.com/processone/ejabberd-ecs-azure/master/conf/ejabberd_template.yml
   - [ejabberd-kuketz.yml](ejabberd-kuketz.yml) from the kuketz blog: https://www.kuketz-blog.de/ejabberd-installation-und-betrieb-eines-xmpp-servers/
   - [ejabberd-v1.0.yml](ejabberd-v1.0.yml) version 1.0 from this repository
-
+  - [Ejabberd server, selfhosting our chat audio-videocall server](https://www.gandalfk7.it/posts/20220123_01_ejabberd_xmpp_server/ )
   
  
 

+ 21 - 7
README.md

@@ -9,8 +9,7 @@ This setup packs all necessary configurations to run an [ejabberd](https://docs.
 ## Prerequisites
 It is assumed that on the docker host we're already running
 1. a [jwilder/nginx-proxy](https://github.com/jwilder/nginx-proxy) reverse proxy
-2. together with [jrcs/letsencrypt-nginx-proxy-companion](https://github.com/JrCs/docker-letsencrypt-nginx-proxy-companion) to obtain letsencrypt TLS certificates,
-3. as well as [watchtower](https://github.com/v2tec/watchtower) to keep images up-to-date.
+2. together with [nginx-proxy/acme-companion](https://github.com/nginx-proxy/acme-companion) to obtain letsencrypt TLS certificates
 
 ## Design decisions:
   1. One host per instance / no vhosts
@@ -52,19 +51,34 @@ but also any other HTTP-only environment such as behind restrictive firewalls.*
 
 ## Used volumes
 ejabber runs under user `ejabberd` with uid/guid `9000`. All data is stored in `/home/ejabberd/` within the container.
- - `.data/backup/` โ€” place to to store DB dumps
+ - `./data/backup/` โ€” place to to store DB dumps
  - `./data/biboumi/database/` โ€” sqlite DB for Biboumi. The Biboumi configuration is defined via environment variables in `docker-compose.yml`.
  - `./data/conf/ejabberd.yml` โ€” configuration file referring to conf.d
  - `./data/conf.d/` โ€” actual configuration files
  - `./data/conf.custom/` โ€” acaddtional custom  configuration files
- - `.data/database/` โ€” Erlang DB used to store all application data
- - `.data/uploads/` โ€” files transferred between users
- - `.data/www/` โ€” static web content
+ - `./data/database/` โ€” Erlang DB used to store all application data
+ - `./data/uploads/` โ€” files transferred between users
+ - `./data/www/` โ€” static web content
  - `/opt/docker/reverse-proxy/data/certs/${HOSTNAME}` โ€” certificates and key material
 
 ## Installation & Configuration
 
-1. Clone the repo and the [reverse proxy and Let's Encrypt companion)](https://git.in-ulm.de/ulpeters/reverse-proxy) to /opt/docker.
+1. Clone the repo and the [reverse proxy and Let's Encrypt companion)](https://git.in-ulm.de/ulpeters/reverse-proxy) to /opt/docker and prepare data folders with proper permissions.
+    ```
+    inst_dir=/opt/docker/ejabberd
+    mkdir -p $inst_dir/data/database \
+             $inst_dir/data/backup \
+             $inst_dir/data/upload \
+             $inst_dir/data/www \
+    && chown -R 9000:9000 $inst_dir/data/
+    
+    mkdir -p $inst_dir/data/biboumi/database
+    chown -R 1000:1000 $inst_dir/data/biboumi/
+    ```
+
+
+
+
 
 2. Copy `.env.template` to `.env` and setup your hostname and ip. A fixed ip is necessary to stun/turn to work.