WordPress als App

appcenter
german
ldap

#1

Hallo,

ich WordPress aus dem AppCenter installiert und habe nun noch folgende Fragen im bezug auf die Integration zwischen WordPress und UCS:

  1. Kann ich die URL servername/wordpress bzw. ip/wordpress nachträglich ändern oder der WP Installation eine eigene URL zuweisen?

  2. Wo kann ich die wp-config.php finden?

  3. Welchen Datenbankserver nutzt die WP Installation und wie erhalte ich auf diesen Zugriff?

  4. Kann ich mit der App Installation von WordPress eine Multisite anlegen bzw. in wie weit bin ich mit einer WP Installation über das AppCenter eingeschränkter, als über eine normale?

  5. Standardmäßig ist ja das WordPress Plugin authLDAP mit allen erforderlichen Konfigurationen eingerichtet. Hier funktioniert der LDAP Login auch wunderbar. Wenn ich jedoch eine eigene WP Installation aufsetze und die Konfiguration von authLDAP 1 zu 1 aus der vorkonfigurierten Installation übernehme, funktioniert der Login nicht. Woran kann dies liegen? Was mache ich falsch?


#2
  1. Standardmäßig gibt es einen Apache Eintrag für “ProxyPass /wordpress https://127.0.0.1:40001/wordpress” und wir konfigurieren WP so, dass es die WP_SITEURL und WP_HOME immer auf den aktuellen $_SERVER[‘HTTP_HOST’] setzt (siehe wp-config.php). Aber die wp-config.php im Container kann angepasst und auf dem Host können neue Apache Configs hinterlegt werden.

  2. /var/lib/univention-appcenter/apps/wordpress/wordpress/wp-config.php auf dem Docker Host bzw. /var/www/html/wp-config.php im Container

  3. mysql auf dem Docker Host

mysql -u wordpress --password=$(< /etc/mysql-wordpress.secret) wordpress
  1. Ich glaube, das beißt sich etwas mit der Konfig aus (1), aber da die wp-config.php angepasst werden kann (und bei Updates auch nicht überschrieben wird) sollte das theoretisch möglich sein (ich kenne mich da jetzt zu wenig mit wordpress multisite aus).

  2. Wir verwenden ein leicht angepassten WP Docker Image. Im Standard sind einige php Module, die für LDAP/TLS erforderlich sind, nicht enthalten. Unser Dockerfile sieht so aus:

FROM wordpress:4.8.0
RUN set -ex; \
	apt-get update \
	&& apt-get install -y \
		libmcrypt-dev \
		libldap2-dev \
		wget \
		ssl-cert \
		unzip \
	&& docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ \
	&& docker-php-ext-install -j$(nproc) mcrypt ldap \
	&& rm -rf /var/lib/apt/lists/* \
	&& a2enmod ssl \
	&& a2ensite default-ssl

Außerdem wird das Root CA der UCS Domäne im Container abgelegt (/etc/univention/ssl/ucsCA/CAcert.pem) und die dortige /etc/ldap/ldap.conf konfiguriert.

more /etc/ldap/ldap.conf                  
TLS_CACERT /etc/univention/ssl/ucsCA/CAcert.pem

sonst klappt php->tls->ldap nicht.


#3

Super, vielen Dank! :slight_smile: