2016-10-28 3 views
0

Ich arbeite daran, meine Umgebung von Landstreicher zu Hafenarbeiter zu ändern und ich stieß auf eine Kupplung. Mit vagrant habe ich eine Bash-Datei, die Daten von ftp holt und es in meinem lokalen wiederherstellt, damit ich mit den aktuellsten Daten arbeiten kann.Sichern und Wiederherstellen von MySQL-Datenbank mit Laravel/Docker

Dies ist mein Code

php artisan db:restore --database=mysql --source=ftp --sourcePath=$(date +'%Y')"/"$(date +'%m')"/"$(date +%m-%d-%Y -d "yesterday")".gz" --compression=gzip 

php Handwerkers wandern

Innerhalb meiner Arbeit Behälter ich diese laufen und es wird nicht die mysql-Befehl finden, weil MySQL in einem anderen Container ist. Was kann ich tun, um meinen Arbeitsfluss zu beheben?

Antwort

0

This answer ist über Schienen Migrationen, aber Sie könnten einen ähnlichen Ansatz zu Laravel nehmen. Erstellen Sie einen Container mit den erforderlichen Laravel-Tools und erforderlichen MySQL-Tools (wahrscheinlich this), um eine Verbindung zur Datenbank herzustellen.

Sie könnten es dann mit einem Vorschlag in this answer kombinieren und ein Migrationsskript erstellen, das Sie zu Ihrem Bild hinzufügen können. Wie larsks in den Kommentaren hervorhebt, würde es Ihnen ermöglichen, die Logik dafür einzukapseln, wo Sie die Backup-Daten erhalten und wie Sie sie an einem Ort wiederherstellen können. Angenommen, Sie benannten dieses Skript restore, können Sie Ihren Wiederherstellungsbefehl wie folgt ausführen

+0

Dank, das half mir zu verstehen, was ich tun musste. – bstory

Verwandte Themen