Ähnliche Themen: DDEV
Du hast ein prähistorisch Projekt mit PHP 7.3 und es wird hirnrissigerweise MongoDB in einer ebenso alten Version benutzt? Und das Ganze soll nicht geupdated werden aber unter DDEV laufen?
Nichts einfacher als das:
❯ cat .ddev/config.yaml
[...]
webimage_extra_packages: [php7.3-mongodb]
[...]
Und nun möchtest Du einen MongoDB Dump einspielen, den Du zuvor mit mongodump
erstellt hast? Fast genauso einfach. Im web Container gibt es natürlich keine mongodb-tools. Aber im mongo Container gibt es die natürlich. Also ein kleiner Umweg:
Das Verzeichnis mit dem Dump (bspw. ~/Sites/data
) in den Mongo Container mounten:
❯ cat .ddev/docker-compose.mountdata.yaml
services:
mongo:
volumes:
- type: "bind"
source: "~/Sites/data"
target: "/data"
/data
ist der Pfad des gemounteten Verzeichnis im Container.
DDEV neu starten und mit SSH auf dem Mongo Container einloggen:
❯ ddev restart
❯ ddev ssh --service=mongo
Die DB im Container importieren.
# cd data
# ls -l
drwxr-xr-x 1 root root 320 Mar 28 15:26 dump
# mongorestore -u db -p db --db db --authenticationDatabase admin -d db dump
DSN in der .env
etwa so:
❯ cat .env.local
[..]
MONGODB_URL=mongodb://db:db@mongo:27017
MONGODB_DB=db
[..]