= Web-Dienste [[PageOutline(2-4)]] Alle Hosts mit einem SSL-gesicherten Dienst sollen den `xinetd` laufen haben, damit für Test-Zwecke port 80 auf den `laubfrosch` weitergeleitet wird. In der Konfiguration von `xinetd` ist ein Sub-Service `http-forward-laubfrosch` enthalten. == Nginx //tbd.// === Wissenssplitter * Regex'es mit geschweiften Klammern drin (`{}`) als Multiplier oder Ranges oder sonstwie, müssen in Anführungszeichen gesetzt werden. * ineinander geschachtelte `location` Directiven brauchen trotzdem absolute Pfade, sie schachteln ihre Pfadangaben nicht automatisch ineinander, werden aber auf die Schachtelung überprüft === neuen V-Host erstellen mit SSL-Cert und getssl * überarbeiten für Nginx: [[ApacheNeuerVhost|Apache und Datenverzeichnis konfigurieren]] * überarbeiten für Nginx: [[ApacheGetsslNeuesCert|neues SSL-Cert von Letsencrypt einrichten]] == Apache //tbd.// === neuen V-Host erstellen mit SSL-Cert und getssl * [[ApacheNeuerVhost|Apache und Datenverzeichnis konfigurieren]] * [[ApacheGetsslNeuesCert|neues SSL-Cert von Letsencrypt einrichten]] == Trac Der `tracd` läuft in einem Docker-Container, in einem Docker-Netzwerk `lf-net` unter der IP `172.18.1.2`. SSL wird vom Apachen gemacht, dann wird ge-forwarded. SSL-Cert wird per `getssl` von Lets-Encrypt bezogen. Die Projekt-Daten und die SVN-Repos sind als Volumes gemountet. Docker-Kommando: {{{ $ docker run --restart unless-stopped --name trac -d --net lf-net --ip 172.18.1.2 -v /var/www/trac.vpn21.net/files:/trac -v /var/www/usvn/public_html/files/svn:/trac/repos:ro joluxer/trac:1.2-babel-svn-scratch }}} === Neues Projekt hinzufügen {{{ $ docker exec -it trac /bin/bash -il # trac-admin /trac/projects/P21-GLT initenv --inherit=/trac/projects/Mtronig/conf/trac.ini Creating a new Trac environment at /trac/projects/P21-GLT Trac will first ask a few questions about your environment in order to initialize and prepare the project database. Please enter the name of your project. This name will be used in page titles and descriptions. Project Name [My Project]> P21 GLT Please specify the connection string for the database to use. By default, a local SQLite database is created in the environment directory. It is also possible to use an existing MySQL or PostgreSQL database (check the Trac documentation for the exact connection string syntax). Database connection string [sqlite:db/trac.db]> Creating and Initializing Project Initenv for '/trac/projects/P21-GLT' failed. Failed to create environment. 'Environment' object has no attribute 'get_db_cnx' Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/trac/admin/console.py", line 497, in do_initenv options=options) File "/usr/lib/python2.7/dist-packages/trac/core.py", line 128, in __call__ self.__init__(*args, **kwargs) File "/usr/lib/python2.7/dist-packages/trac/env.py", line 301, in __init__ setup_participant.environment_created() File "/usr/lib/python2.7/dist-packages/mastertickets/api.py", line 25, in environment_created self.upgrade_environment(self.env.get_db_cnx()) AttributeError: 'Environment' object has no attribute 'get_db_cnx' # _ }}} Das geht jetzt scheinbar schief, weil der Vorgang (sehr spät) mit einem Fehler abbricht, aber die Einrichtung ist im Prinzip schon fertig. Die DB und das Wiki muss noch aktualisiert werden und ein oder mehrere Admins benannt werden. {{{ # trac-admin /trac/projects/P21-GLT upgrade # trac-admin /trac/projects/P21-GLT wiki upgrade # trac-admin /trac/projects/P21-GLT permission add Admin TRAC_ADMIN # trac-admin /trac/projects/P21-GLT permission add lode TRAC_ADMIN }}} === Projekt-Konfiguration tbd. == SVN * SVN-Server: Apache, vhost: usvn.vpn21.net mit SSL-Frontend durch den Nginx * Webfrontend: usvn * Speicherplatz: * Web-Frontend: `/dev/cloud_data/usvn_app`, ca. 1GB thin-provisioned im `cloud-pool` * SVN-Repo-Daten: `dev/cloud_data/svn-repos`, ca. 24GB thin-provisioned im `cloud-pool` more tbd. == Next-Cloud tbd. == Etherpad Texteditor tbd. == Tracks tbd.