Hi,
ich habe gerade Contao 4.9 neu installiert, aber noch keine Datenbank angelegt. Jetzt brauche ich noch eine zweite Installation auf dem selben Server. Könnte ich die erste auch einfach kopieren, oder stimmen dann Pfade nicht?
Hi,
ich habe gerade Contao 4.9 neu installiert, aber noch keine Datenbank angelegt. Jetzt brauche ich noch eine zweite Installation auf dem selben Server. Könnte ich die erste auch einfach kopieren, oder stimmen dann Pfade nicht?
Das klappt erfahrungsgemäß. Ein Fallstrick ist da die Datenbank und dass man nach Änderung der Datenbankeinstellungen in der parameters.yml tunlichst den Application/Symfonycache löschen und neu aufbauen sollte, sonst wird trotz der Änderung fröhlich die ursprünglich eingetragene Datenbank benutzt. Da du noch gar keine DB eingetragen hast sollte das aber unproblematisch sein.
Edit: Auch die selbe PHP-Version sollten die beiden Installatonen benutzen.
Fallstrick sind eher die Symlinks, das kann schief gehen.
Wenn du über die Konsole arbeitest, könntest du dir alles zippen und entpacken, den Ordner umbenennen und die (Sub-)Domain & neue DB dann einfach darauf zeigen lassen.
Wenn du nicht so fit in der Konsole bist: probier es aus. Das Copy & Paste/Hochladen der Dateien könnte aber genauso lange (oder länger) dauern, als wenn du neu installierst.
Ich wollt einfach über die Konsole kopieren. Was bringt denn Zippen und Entpacken?
Und es geht einfach schneller. Händisch runterladen (der Files-Ordner kann ja echt riesig werden) und hochladen ist oft langwierig. Der vendor Ordner ist auch gespickt mit vielen kleinen Dateien, das dauert einfach alles super lang.
Ich will nichts runter und hochladen, sondern mit der Konsole kopieren. Und im File Ordner ist noch nichts. Deswegen verstehe ich noch nicht was das Zippen bringen soll. Das sollte doch auch bei den Symlinks keinen Unterschied machen?
@Stefko: Composer läuft schon :-). Aber vorgestern ist der in 2h nicht fertig geworden, da ist es fürs nächste Mal evtl. gut zu wissen.
Hier ist ne gute Anleitung mit der ich es immer mache
https://erdmann-freunde.de/logbuch/contao-4-4-umziehen/
Aber es ging doch die ganze Zeit um eine zweite leere Neuinstallation, oder habe ich das falsch gelesen?
spricht sicherlich nichts dagegen,
ich habe eine vollständige 4.4.53 sowie eine 4.9x geklont um damit zu testen
benutzt habe ich auf der Konsole für das komplette Installations-Verzeichnis inkl. files:
- zweite leere Datenbank angelegt und mit Daten der Originaldatenbank gefüttertCode:cp -a quelle ziel
- in geklonter Installation in parameters.yml aktuelle Daten eingetragen.
Geklonte Version funktionierte auf Anhieb; Symlinks funktionierten auch, habe jedoch später über Systemwartung mal neu anlegen lassen (scheinbar nicht notwendig gewesen)
also alles ohne tar und zip und Contao-Manager
Geht das über Konsole flotter also über die Composer Cloud, oder wie das heißt?
Ist in diesem Fall relativ egal. Du könntest grundsätzlich einfach nur folgende Dateien kopieren:
- composer.json
- composer.lock
- web/contao-manager.phar.php
- + alle anderen, eigenen Dateien, die du mit kopieren möchtest (bspw. config, files, templates)
Wenn du dann den Contao Manager in der Kopie aufrufst, sollte er dir anbieten die Abhängigkeiten zu installieren. Es wird dabei dann der Stand der composer.lock über ein composer install wiederhergestellt. Die Resolver Cloud wird dabei nicht benutzt - weil es ja nichts zu resolven gibt.
Also, bei mir hat es auf diesem Weg nicht geklappt. Ich mache es immer so:
Kopieren der Umgebung
- Neue Subdomain im Backend anlegen - mit SSL - PHP Version beachten
- Datenbank neu anlegen und die live Datenbank in die neue Datenbank kopieren
- Files kopieren: von live Umgebung in Verzeichnis neuer Subdomain
- Subdomain auf den /web Ordner umlenken
- Nach Abschluss des Kopiervorganges der Files index.html im root der Installation löschen (legt mein Hoster automatisch an)
- Datenbankverbindung auf die Kopie ändern
/app/config/parameters.yml- Umgebung mit einem Passwort schützen
- Den Contao-Manager starten mit domain/contao-manager.phar.php
- Unter Systemwartung alles aktualisieren
Anwendungs-Cache
Composer Class Loader
Composer Abhängigkeiten
Composer Cache- Backend aufrufen:
unter "Backup Datenbank" schauen, ob die Nummer der kopierten Datenbank dort steht und nicht die aus der Produktion (ist eine Erweiterung, aber praktisch für diesen Zweck)
Ein Inhaltselement unsichtbar machen und schauen, ob dieses in der Produktion dennoch angezeigt wird. Wenn nein, hat die Änderung der Datenbank nicht geklappt! Das muss erst passen. Wenn an der neuen Umgebung sicher die neue Datenbank hängt, weiter ...- Nun die Installationen und Tests machen, die gemacht werden sollen.
Es mag einfachere Wege geben, aber ich habe es mit dem von Spooky beschriebenen Weg nicht geschafft eine Umgebung wiederherzustellen nachdem ich mir meine Produktion zerschossen habe, weil ich auf der Kopie den Cache nicht gelöscht hatte. So hat der Manager meine Produktionsdatenbank upgedatet und das kopierte Filesystem . Nachdem ich verstanden habe, was da passiert war lies sich über die Sicherung auch alles wieder korrigieren. Aber da wurde mir ganz anders und ich stand neben mir wie schon lange nicht mehr.
Wenn du noch gar keine Daten drin hast, ist zweimal installieren sicher schneller. Probleme mit den Symlinks hatte ich noch nie. Vielleicht hilft es dann irgendwem anders, wenn nicht dir.
Viele Grüße
Shania
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Lesezeichen