...
Falls dies weiterhin keinen Erfolg bringt, können folgende Schritte zum Ändern der Zugriffsberechtigungen angewandt werden:
Ermitteln der ID des Containers
oc-server3_php-fpm
mittelssudo docker ps
.Öffnen einer Shell im Container:
sudo docker exec -it 45b6e4994fac /bin/bash
, wobei45b6e4994fac
die ID des Containers ist.In der Container-Shell
chmod -R 777 /application/htdocs/var/logs/dev/
ausführen.Die Container-Shell regulär mittels
exit
verlassen.
Host-Mismatch bei Aufruf der OKAPI mit Port-Override
Falls in einer Override-Datei Ports überschrieben werden (siehe oben), funktioniert die OKAPI möglicherweise nicht richtig - stattdessen erscheint ein Hinweis auf einen Port-Mismatch. Dies kann auf folgende Art und Weise behoben werden:
Ermitteln der ID des Containers
oc-server3_php-fpm
mittelssudo docker ps
.Öffnen einer Shell im Container:
sudo docker exec -it 45b6e4994fac /bin/bash
, wobei45b6e4994fac
die ID des Containers ist.Im Container einen Editor installieren, beispielsweise
nano
. Da der Container auf Ubuntu basiert, funktioniert dies mittelsapt-get update && apt-get install nano
.Die passende Konfigurationsdatei mittels des Editors im Container öffnen, beispielsweise mittels
nano /application/htdocs/config2/settings.inc.php
.Setzen von
$dev_baseurl = 'http://docker.team-opencaching.de:2200';
und anschließendes Speichern der Datei. Hierbei ist 2200 der Port, der statt Port 80 für den Webserver in der Override-Datei konfiguriert worden ist.
Während docker:init kommt es im Abschnitt (3/31) zu einer Meldung “> mysql -uroot -proot -hmariadb -e "DROP DATABASE IF EXISTS opencaching" ERROR 2005 (HY000): Unknown MySQL server host 'mariadb' (-3).“
...
Um Logs wieder über die normale Loglöschenfunktion löschen zu können, gibt es mehrere Möglichkeiten:
In der Datenbanktabelle ‘cache_logs’ den Eintrag in Spalte ‘nodes’ auf 4 ändern. (Dies entspricht der ‘Local Development’-Umgebung (siehe Tabelle ‘nodes’)).in der Datei ‘/dev-ops/local.team-opencaching.de/templates/config2-settings.inc.tpl.php' den Eintrag ‘$opt['logic']['node']['id'] = 5;’ ändern auf '$opt['logic']['node']['id'] = 4;’ und das docker:init Script ausführender Pull Requesthttps://github.com/OpencachingDeutschland/oc-server3/pull/830behebt das Problem. Für bereits laufende Testserver einmalig das docker:init Script laufen lassen.
Es kann nicht auf die Domains docker.team-opencaching.de oder try.docker.team-opencaching.de zugegriffen werden.
...
Code Block |
---|
127.0.0.1 docker.team-opencaching.de 127.0.0.1 try.docker.team-opencaching.de |
Abschalten
...
von
...
“NOTICE”-Meldungen. (Legacy)
Aufgrund diverser Updates werden vormals ignorierte Probleme nun mit einer “NOTICE”-Meldung kenntlich gemacht. Um die Meldungen zu unterdrücken, kann in der Smarty-Klasse das error_reporting Level geändert werden.
Beispiele für Fehlermeldungen:
Code Block |
---|
Notice: Undefined index: error_password_not_ok in /app/htdocs/var/cache2/smarty/compiled/.. Notice: Trying to get property 'value' of non-object in /app/.. |
Hierzu in Abhilfe:
Bis Smarty 3.x: In der Datei /htdocs/vendor/smarty/smarty/libs/Smarty.class.php die Zeile mit $error_reportingändern auf:reporting ändern auf den nachfolgenden Code. Die Änderung ist nicht git-relevant und geht nach jedem “./psh.phar docker:start-clean” verloren.
Code Block |
---|
public $error_reporting = E_ALL & ~E_NOTICE; |
Ab Smarty 3.x und 4.x: In der Datei /htdocs/lib2/common.inc.php die obere Zeile (PHP_DEBUG_ON
) mit $error_reporting ändern auf den nachfolgenden Code. Die Änderung ist permanent und muss vor einem Commit rückgängig gemacht werden, da sie sonst im github Repository landet.
Code Block |
---|
ini_set('error_reporting', E_ALL & ~E_NOTICE); |