Etherpad als Docker-Container

vorhergehende Artikel in: Docker Linux
04.04.2020

Ich habe in letzter Zeit hin und wieder neue Dienste zu meinem Docker-Zoo hinzugefügt - nunmehr noch einen weiteren...

Ich habe mich wieder einmal inspirieren lassen und einen eigenen Docker-Container in den Zoo aufgenommen. Das nachfolgende Docker-File sorgt bei mir dafür, dass sich Etherpad hinter Traefik als Dienst im Netzwerklabor einrichtet und von allen Endgeräten ausnutzbar ist:

version: "3.1"
services:
  etherpad:
    image: 'etherpad/etherpad'
    container_name: etherpad
    hostname: etherpad
#    ports:
#      - 9001:9001
    env_file:
      - etherpad.env
    secrets:
      - DB_PASS_FILE
      - ADMIN_PASSWORD_FILE
    volumes:
      - ./settings.json:/opt/etherpad-lite/settings.json
    restart: always
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.etherpad.rule=Host(`etherpad.docker.lab`)"
      - "traefik.http.services.etherpad.loadbalancer.server.port=9001"
      - "traefik.docker.network=traefik_proxy"
    networks:
      - traefik_proxy
      - default

etherpad_db: image: postgres container_name: etherpad_db volumes: - ./postgres-data:/var/lib/postgresql/data env_file: - postgres.env secrets: - POSTGRES_PASSWORD_FILE networks: - default

networks: traefik_proxy: external: name: traefik_proxy

secrets: POSTGRES_PASSWORD_FILE: file: ./crypto/javax.persistence.jdbc.password_FILE DB_PASS_FILE: file: ./crypto/javax.persistence.jdbc.password_FILE ADMIN_PASSWORD_FILE: file: ./crypto/ADMIN_PASSWORD_FILE

Das entsprechende Environment für etherpad sieht wie folgt aus:

DB_TYPE=postgres
DB_HOST=etherpad_db
DB_PORT=5432
DB_NAME=etherpad
DB_USER=etherpad
NODE_ENV=production
ADMIN_PASSWORD=<change_me>
<USER>_PASSWORD=<change_me>

Der Nutzername für den nichtprivilegierten Nutzer ist außerdem in den settings.json anzupassen, die über ein Volume in den Container gemounted werden müssen. Die Passwörter für beide Nutzer müssen im Environment lokalen Gegebenheiten angepasst werden. Die Passwörter werden nicht über Docker-Screts realisiert, da das Image nicht darauf vorbereitet ist - wenn man es versucht, werden sie einfach nicht wirksam... Natürlich ist es möglich, weitere unprivilegierte Nutzer anzulegen. Es ist in der vorliegenden Konfiguration aber auch einfach möglich, das System ohne Authentifizierung zu nutzen...

Das entsprechende Environment für etherpad_db sieht wie folgt aus:

POSTGRES_USER=etherpad
POSTGRES_DB=etherpad

Artikel, die hierher verlinken

FreePad im Docker-Zoo

28.10.2023

Ein neues Projekt ist in meinen Docker-Zoo eingezogen

Xpra und Docker

10.05.2020

Ich berichtete neulich über weiteren Zuwachs in meinem Docker-Zoo. Ich habe hier auch verschiedentlich über xpra berichtet - das Gnu-Screen-Äquivalent für X11. Nun habe ich versucht beides zu verbinden

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

Neueste Artikel

  • SQL Funktionen in SQLite als BeanShell-Scripts

    Ich habe bereits hin und wieder über Erweiterungen der sQLshell berichtet, die bestimmte spezifische, proprietäre Features des jeweiligen DBMS in der sQLshell verfügbar machen.

    Weiterlesen...
  • Spieleengine IX

    Es gibt seit Ewigkeiten mal wieder Neues von meiner eigenen Spieleengine!

    Weiterlesen...
  • Neue Version plantumlinterfaceproxy napkin look

    Es gibt eine neue Version des Projektes plantumlinterfaceproxy - Codename napkin look.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.