pimcore 10.x - Installation auf einem Managed Server¶
Ausstattung Ihres Managed Servers¶
Für den Betrieb von Pimcore ist ein Managed Server mit mindestens 8 GB RAM erforderlich.
Einrichtung auf einem Managed Server¶
Voraussetzungen¶
- Composer
- Zugangsdaten für MySQL
- optional ein github Token
Für die Installation von pimcore wird der Composer benötigt. Wie dieser installiert werden kann, ist im Artikel Composer - Einrichtung auf einem Managed Server beschrieben. Dabei ist auch zu beachten, dass die php Binary korrekt gesetzt wird.
Vorbereitung der Installation¶
Folgende Einstellungen müssen in Ihrer php.ini gesetzt werden. Die php.ini legen Sie im Homeverzeichnis des Nutzers an:
date.timezone = "Europe/Berlin"
memory_limit = 8000M
upload_max_filesize = 256M
allow_url_fopen = On
extension_dir = ""
extension = redis.so
extension = intl.so
extension = imagick.so
extension = apcu.so
apc.enabled=1
apc.shm_size=128M
apc.ttl=7200
apc.enable_cli=1
apc.gc_ttl=3600
apc.entries_hint=4096
apc.slam_defense=1
apc.serializer=igbinary
zend_extension = opcache.so
opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=12000
opcache.jit_buffer_size=100M
Sämtliche Extensions sind auf Managed Server von Providerdienste.de bereits vorinstalliert und müssen lediglich aktiviert werden.
Achten Sie darauf, dass die angelegte Datenbank im ‚utf8mb4‘ charset vorliegt. Dies können Sie über phpMyAdmin prüfen und ggf. anpassen. In der Konsole sähe der Befehl wie folgt aus
ALTER DATABASE <DATABASE_NAME> CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
Für <DATABASE_NAME> setzen Sie bitte den Namen Ihrer Datenbank ein.
Installation von pimcore¶
Die Installation von pimcore wird mit folgendem Befehl gestartet:
COMPOSER_MEMORY_LIMIT=-1 composer create-project pimcore/skeleton ~/pimcore
Sie können den Pfad anpassen, in dem der Teil
[…] ~/pimcore […]
durch einen anderen Pfad ersetzt wird.
Hat der Composer alle Komponenten kopiert, kann die Datenbank eingerichtet werden. Führen Sie dazu folgende Befehle aus:
cd ~/pimcore
./vendor/bin/pimcore-install
Dies startet den Installationsprozess. Dabei werden die Daten für die MySQL Datenbank abgefragt. Abschließend muss das DocumentRoot für pimcore angepasst werden. In pd-admin muss in der Endkunden-Ansicht unter ‚Subdomains‘ das Wurzelverzeichnis (Document Root) der Webseite auf das Verzeichnis ~/pimcore/public gesetzt werden.
Konfiguration von pimcore¶
Unter ~/pimcore befindet sich die Datei .env. Darin ist
APP_DEBUG=true
enthalten. Dieser Wert sollte auf
APP_DEBUG=false
gesetzt werden, damit pimcore direkt produktiv eingesetzt werden kann. Die Konfiguration der einzelnen Binaries erfolgt über ~/pimcore/config/services.yaml
pimcore_executable_composer: /home/<user>/bin/composer
pimcore_executable_php: /home/<user>/bin/php
pimcore_executable_exiftool: /usr/local/pd-admin2/bin/exiftool
Dies sind typische Angaben für pimcore. Auf unseren Managed Servern können noch folgende Ergänzungen gemacht werden:
pimcore_executable_gs: /usr/bin/gs
pimcore_executable_pdftotext: /usr/bin/pdftotext
pimcore_executable_pngcrush: /usr/bin/pngcrush
pimcore_executable_pngout: /usr/local/bin/pngout
pimcore_executable_advpng: /usr/bin/advpng
pimcore_executable_cjpeg: /usr/bin/cjpeg
pimcore_executable_jpegoptim: /usr/bin/jpegoptim
pimcore_executable_nice: /usr/bin/nice
pimcore_executable_nohup: /usr/bin/nohup
pimcore_executable_timeout: /usr/bin/timeout
pimcore_executable_dot: /usr/bin/dot
Anlegen des Cronjobs¶
Zum Anlegen der Cronjobs müssen Sie auf Ihrem Managed Server in die Endkunden-Ansicht von pd-admin gehen. Unter dem Menüpunkt ‚Cronjobs‘ können Sie die zwei Cronjobs anlegen:
/usr/local/pd-admin2/bin/php-8.0-cli -c ~/php.ini ~/pimcore/bin/console pimcore:maintenance --async
Der Cronjob sollte alle 5 Minuten ausgeführt werden. Dazu tragen Sie bei Minuten */5 ein.