Contao über Konsole installieren
Devilbox starten
Section titled “Devilbox starten”$ docker-compose up -d httpd php mysql (bash-lias: devil_start):: startet die devilbox, -d bedeutet: im Hintergrund (?)
$ docker-compose stop (bash-alias: devil_stop):: stoppt die devilbox
$ docker-compose rm -f (bash-alias: devil_clear):: Müll rausbringen (insbesondere dann wichtig, wenn man den PC runtergefahren hat, ohne die Container zu stoppen)Neue Contao-Installation in der Devilbox
Section titled “Neue Contao-Installation in der Devilbox”Anleitung im Contao-Handbuch Daten einer bestehenden Installation von Github/GitLab übernehmen
PHP-Version in der Datei env prüfen (z.B. PHP_SERVER=8.4)!
- ins Verzeichnis repos/devilbox wechseln$ godevil (bash-alias)
- devilbox starten$ devil_start
- in den laufenden PHP-Container einklinken$ ./shell.sh
// das wird dann angezeigt ...$ devilbox@php-8.4.1 in /shared/httpd
- neue Contao-Instanz anlegen$ composer create-project contao/managed-edition <dir> <contao-version>
- neue Datenbank anlegen (ohne Passwort!)$ mysql -u root -h mysql -p -e 'CREATE DATABASE db_<db_name>'
- Datenbank-Zugangsdaten in die .env.local eintragen- DATABASE_URL="mysql://root:@127.0.0.1:3006/db_xxx" -> es gibt kein PW, daher einfach leer lassen
// 1. WENN DIE SEITE NEU ANGELEGT WURDE:- Datenbank aktualisieren$ php vendor/bin/contao-console contao:migrate (führt die Migrationen aus)
- Backend-Benutzer anlegen$ php vendor/bin/contao-console contao:user:create
// 2. WENN DIE SEITE KOPIERT WURDE:- Datenbank importieren- composer.json ergänzen (bei alten Projekten die composer.json von der Boilerplate als Basis nehmen)
- ins neue Verzeichnis wechseln$ cd contao-project
- Abhängigkeiten installieren$ composer update
- Datenbank aktualisieren$ php vendor/bin/contao-console contao:migrate (führt die Migrationen aus)
// 3. WENN DIE SEITE ÜBER GITHUB GEKLONT WURDE- im Repo:- ins Verzeichnis der neuen Contao-Installation wechseln$ cd <dir>
- ein neues Git-Repo initialisieren$ git init
- falls der Branch "master" heißt, sollte er in "main" umbenannt werden (siehe auch /wdt/05_git/#master--main):$ git branch -m main
- define github as the remote origin, the url is provided by github$ git remote add origin <url>
- nun die Daten von GitHub/GitLab runterziehen$ git pull
- !! unklar ob das wirklich nötig ist: checks out the main branch (-f = --force): When switching branches, proceed even if the index or the working tree differs from HEAD, and even if there are untracked files in the way. This is used to throw away local changes and any untracked files or directories that are in the way.$ git checkout main -f
- Set up <branchname>'s tracking information so <upstream> is considered <branchname>'s upstream branch. If no <branchname> is specified, then it defaults to the current branch.$ git branch --set-upstream-to origin/main
Jetzt sollten alle nötigen Daten, inkl. ein DB-Dump in `/files/db_backup` vorhanden sein.Weiter wie oben:
- Datenbank importieren- ins neue Verzeichnis wechseln$ cd contao-project
- Abhängigkeiten installieren$ composer update
- Datenbank aktualisieren$ php vendor/bin/contao-console contao:migrate (führt die Migrationen aus)
// WEITERE SCHRITTE- Domain in die vhosts-Datei eintragen (Verknüpfung am Desktop)- PHP-Container verlassen$ exit
- files/inhalte und ggf. andere Ordner über ftp runterladen- $ npm install- ev. URL in der package.json anpassen- $ npm run startDevilbox
Section titled “Devilbox”Wenn eine neue PHP-Version verwendet wird, muss eine memory_limit.ini im /cfg-Verzeichnis der jeweiligen PHP-Version angelegt werden.
[PHP]memory_limit = -1