/ltb_server

Django Server für die verwaltung von Lustigen Taschenbüchern

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

LTB Server

Docker Pulls License: AGPL-3 beta

TODO: Fertigstellen

README ist noch nicht fertig.

LTB (Lustiges Taschenbuch) Server für die Übersicht und Verwaltung der Existierenden und eigenen Bücher.

Features:

  • Übersicht aller existierenden Bücher (ink. Ausgaben/Sonderausgaben)
  • Übersicht der Bücher im Besitz
  • Unterscheidung zwischen Original und Nachdruck
  • Gelesen/Ungelesen Status
  • Finden aller fehlenden Bücher
  • Automatischer fetch der Daten von der offiziellen Homepage

Table of contents

Das Server Image kann sowohl aus dem Code gebaut werden, als auch aus dem Docker Hub geladen werden.

Über den docker pull Befehl kann das Image einfach geladen werden.

docker pull user/name:version

Zum bauen des Images muss zu aller erst dieses Repository geklont werden.

git clone XXX

danach aus dem repository Verzeichnis heraus das image bauen.

docker build -t name:version .

Aktuell wird nur PostgreSQL unterstützt.

Ich empfehle PostgreSQL 13.0 bzw. das postgres:13.0-alpine Image

Um eine gewisse Sicherheit und Verwaltung der Bilder zu gewährleisten, wird ein angepasster nginx Container benötigt. Dieser kann sowohl aus dem Code gebaut werden, als auch aus dem Docker Hub geladen werden.

Über den docker pull Befehl kann das Image einfach geladen werden.

docker pull user/name:version

Zum bauen des Images muss zu aller erst dieses Repository geklont werden.

git clone XXX

danach aus dem repository Verzeichnis heraus das image bauen.

docker build -t name:version config/nginx/

Um Server und Datenbank optimal über Docker zu verwalten empfehle ich docker-compose zu nutzen.

version: '3'
services:
  nginx:
    build: ./config/nginx
    ports:
      - "80:80"
    volumes:
      - static_volume:/src/static
      - media_volume:/src/media
    depends_on:
      - web

  web:
    build: .
    volumes:
      - static_volume:/src/static
      - media_volume:/src/media
    env_file:
      - ./.env
    depends_on:
      - db

  db:
    image: postgres:13.0-alpine
    ports:
      - "5432:5432"
    volumes:
      - postgres_data:/var/lib/postgresql/data/
    env_file:
      - ./.env

volumes:
  postgres_data:
  static_volume:
  media_volume:
  • build ./config/nginx wenn das Image vorher erstellt werden soll.
  • image name:version wenn ein existierendes (lokales) image verwendet werden soll.
  • image name:version wenn das Image aus dem Docker Hub verwendet werden soll.
  1. Dummy
  2. Dummy
  3. Dummy
  • Gespeicherte Bilder werden beim Löschen des Buches nicht aus dem Filestore entfernt
  • Multiuser
  • Unterschiedliche "Lagerorte"
  • API ausbauen
  • Möglichkeit ein Buch aus der Detailansicht in den Bestand aufzunehmen
  • Bugfix: Github Actions
  • Erster Release
  • Testen der Github Actions