Skip to content

medienhaus/medienhaus-docker-dev

Repository files navigation

medienhaus/

Customizable, modular, free and open-source environment for decentralized, distributed communication and collaboration without third-party dependencies.

WebsiteFediverse


medienhaus-docker-dev

This repository contains our Docker composition for a containerized runtime environment of medienhaus-spaces including matrix-synapse, element-web, etherpad-lite, spacedeck-open, and lldap.


Instructions

  1. git clone the medienhaus-docker-dev repository and change directory

    git clone https://github.com/medienhaus/medienhaus-docker-dev.git && \
    cd medienhaus-docker-dev/
    
  2. fetch contents of submodules

    git submodule update --init
    
  3. start docker composition and initialise medienhaus-spaces

    docker compose up -d --wait && \
    ./scripts/init.sh
    
  4. set up lldap user account(s) via: http://ldap.localhost/

    • username: admin
    • password: change_me
  5. open the medienhaus-spaces application and log in via: http://localhost/login

    • username: (configured via lldap)
    • password: (configured via lldap)

Development

Hot-reloading for medienhaus-spaces can be started via the following command.

docker compose watch

Cancelling the watcher via CTRL-c will not stop or shut down the composition.


Destructions — reset everything and start from scratch

docker compose down && \
rm -rf data/etherpad && \
rm -rf data/matrix-synapse && \
rm -rf data/spacedeck && \
docker compose up -d --build --force-recreate --wait && \
./scripts/init.sh && \
docker compose up -d --build --force-recreate --wait medienhaus-spaces

💥 If you want to TAKE ALL THE SHORTCUTS YOU CAN TAKE, run scripts/reset.sh.

./scripts/reset.sh

🧩 For convenience reasons, manually created lldap accounts are not deleted.


URLs / Links for default localhost setup

Application / Service URL / Link
medienhaus-spaces http://localhost/
matrix-synapse http://matrix.localhost/
element-web http://element.localhost/
etherpad-lite http://etherpad.localhost/
spacedeck-open http://spacedeck.localhost/
lldap http://ldap.localhost/
traefik http://traefik.localhost/