Projekt

Allgemein

Profil

Aktionen

Aufgabe #1995

offen

Converse JS CDN Download auf Lokale Library mit autoupdater umstellen

Von JohannFinsterbusch vor etwa 1 Monat hinzugefügt. Vor 24 Tagen aktualisiert.

Status:
Feedback
Priorität:
Normal
Kategorie:
Instanz Candy
Beginn:
14.09.2024
Abgabedatum:
14.09.2024 (seit 41 Tagen verspätet)
% erledigt:

100%

Geschätzter Aufwand:

Beschreibung

Derzeit läd die Chat Website den gesammten code vom CDN Server von Converse js, bei jedem Besuch der Seiter neu herrunter. Dies soll umgestellt werden. Dazu soll das Script Local von userem Server bereitgestellt werden und durch Nixos regelmäßig(1/2 anno) aktualisiert werden.


Zugehörige Tickets 1 (1 offen0 geschlossen)

Nachfolger von Bereich Administration Rechentechnik - Aufgabe #1994: Hosten eines WebUI für den Candychat unter verwendung eines NixOS Containers und Converse.FeedbackPaulRiegel13.09.2024

Aktionen
Aktionen #1

Von JohannFinsterbusch vor etwa 1 Monat aktualisiert

  • Übergeordnetes Ticket #1994 wurde gelöscht
Aktionen #2

Von JohannFinsterbusch vor etwa 1 Monat aktualisiert

  • Abgabedatum wurde auf 14.09.2024 gesetzt
  • Beginn wurde von 13.09.2024 zu 14.09.2024 geändert
  • Nachfolger von Aufgabe #1994: Hosten eines WebUI für den Candychat unter verwendung eines NixOS Containers und Converse. wurde hinzugefügt
Aktionen #3

Von MathisBluemel vor etwa 1 Monat aktualisiert

  • % erledigt wurde von 0 zu 100 geändert

Ich habe die HTML so umgeschrieben das sie nach den 2 JS und einer CSS Datei im Webroot schaut.
Dazu habe ich die configuration.nix umgeschrieben und einen cron Job hinzugefügt welcher ein Skript:

#!/bin/sh
curl  https://cdn.conversejs.org/dist/converse.min.css > /var/www/converse.min.css
curl  https://cdn.conversejs.org/dist/converse.min.js > /var/www/converse.min.js
curl  https://cdn.conversejs.org/3rdparty/libsignal-protocol.min.js > /var/www/libsignal-protocol.min.js

jeden Monat ausführt.

Hier nochmal die configuration.nix:

###########################################################################
#
#       BOF - Begin of File
#
###########################################################################

###########################################################################
#
#       Liste aller am  ursprünglichen Dokument beteiligter Autorinnen
#       List of 
#       @author admin@ --> Abgesprochene zusammenfuehrung von Kommentaren
#       @author resi@
#       @author mlp@
#       @author vat@
#       @author offbyone@
#
###########################################################################
#       Autor der  überarbeiteten  Version
#       @author johann@
###########################################################################
#
#       Liste verwendeter Abkuerzungen im Dokument
#       
#       PVE             - Proxmox Virtual Enviroment - 
#       Link: https://en.wikipedia.org/wiki/Proxmox_Virtual_Environment
#
#       LXC             - Linux Container
#       Link: https://en.wikipedia.org/wiki/LXC | https://linuxcontainers.org/lxc/
#
#       CT              - Container
#       ID              - Identity Document
#
#       DHCP            - Dynamic Host Configuration Protocol
#       Link: https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol
#       
#       TCP & UDP       - Transmission Control Protocol & User Datagram Protocol
#       Link: https://en.wikipedia.org/wiki/Transmission_Control_Protocol & https://en.wikipedia.org/wiki/User_Datagram_Protocol
#       
#       HTW     - Hochschule fuer Technik und Wirtschaft Dresden
#       Link: https://www.htw-dresden.de/       
#
#       NGINX           - "engine X" Webserver 
#       Link: https://en.wikipedia.org/wiki/Nginx | https://nginx.org/
#       
#
###########################################################################

{ config, pkgs, ... }:

{

  imports = [ 

    <nixpkgs/nixos/modules/virtualisation/proxmox-lxc.nix>
  ];

###############################
###     NixOS
##############################

system.stateVersion = "24.05";
system.autoUpgrade.enable = true;
system.autoUpgrade.allowReboot = true;
nix.settings.auto-optimise-store = true;
nix.optimise.automatic = true;
nix.gc.automatic = true;
nix.gc.options = "--delete-older-than 5d";

############################
####    System
############################

  proxmoxLXC.manageHostName = true;

  networking.hostName = "www";
  networking.domain = "chat.stura.htw-dresden.de";

  time.timeZone = "Europe/Berlin";

  # NGINX Webserver
  services.nginx.enable = true;

  services.nginx.virtualHosts."${config.networking.fqdn}" = {
    forceSSL = true;
    enableACME = true;
    root = "/var/www/";
  };

  services.nginx.logError = ''/var/log/nginx/error.log debug''; 

  security.acme.defaults.email = "cert@stura.htw-dresden.de";
  security.acme.acceptTerms = true;
### Enable cron service für Autoupdate von Converse
  services.cron = {
    enable = true;
    systemCronJobs = [
      "5 4 1 * *      root    /var/update-converse.sh" 
    ];
  };

###############################################################
#
#       SSH Verbindungen zu  diesem Container sollen prinzipiell nicht moeglich sein. 
#       NixOS Container = Server        -       SSH Verbindung = Client
#       
#       Allgemein soll das Anmelden auf einen NixOS Container ueber "pct  enter <ct_id>" erfolgen.
#       Es ist demnach nicht notwendig SSH als Server fuer den Nixcontainer zu aktivieren.
#       services.openssh.enable = false; 
#       Grund: Wird von Proxmoy auf true gesetzt.

###############################################################

       services.openssh.enable = false;

############################
####    Netzwerk
############################

###############################################################
#
#       Network Cofigruation - nur IPv4 
#       Zur nicht dynamischen Bereitstellung eignet sich DHCP nicht wirklich
# 
###############################################################

  networking.useDHCP = false;
  networking.enableIPv6 = false;

############################################################### 
#
#       Firewall Configuration
#       Standardmaessig ist die Firewall bei NixOS an. Wir spezifizieren erlaubte TCP Ports.
#       
##############################################################

  networking.firewall.allowedTCPPorts = [ 80 443 ];

}
##################################################################
#
#       EOF - End of File
#
##################################################################

Aktionen #4

Von MathisBluemel vor 24 Tagen aktualisiert

  • Status wurde von Neu zu Feedback geändert
Aktionen

Auch abrufbar als: Atom PDF