## Comment migrer une base de données PostgreSQL d'un ancien serveur dokku à un nouveau serveur Kamal 1. **Sur le serveur dokku**, sauvegardez votre base de données : ```bash dokku postgres:export project-database > project.dump ``` en modifiant : - `project-database` par le nom de votre base de données dokku (récupérable avec `dokku postgres:report`) 2. **Depuis votre poste d'administration**, copiez la sauvegarde vers votre nouveau serveur Kamal : ```bash scp user@dokku-server:project.dump user@kamal-server:project.dump ``` 3. Restaurez la sauvegarde **sur votre nouveau serveur** Kamal : ```bash cat project.dump | sudo docker exec -i project-db pg_restore -c --no-privileges --no-owner -U project -d project_production ``` en prenant le soin de modifier : - `project-db` par le nom de votre container de base de données PostgresQL (récupérable avec la commande `docker container ps`) - `project` par le nom de votre projet (`POSTGRES_USER`) - `project_production` par le nom de votre base de données (`POSTGRES_DB`) ## Comment migrer un stockage persistant local d'un ancien serveur dokku vers un nouveau serveur Kamal 1. **Sur le serveur dokku**, localisez le répertoire de votre stockage persistant : ```bash dokku storage:report ``` 2. **Sur le serveur Kamal**, localisez le répertoire de votre stockage persistant : ```bash docker volume ls docker volume inspect project_storage ``` en modifiant `project_storage` par le nom de votre volume. 3. **Depuis votre poste d'administration**, copiez les fichiers vers votre nouveau serveur Kamal : ```bash scp -r user@dokku-server:/var/lib/dokku/data/storage/project-storage user@kamal-server:/var/lib/docker/volumes/project_storage/_data ``` en modifiant les variables. 4. **Sur le nouveau serveur Kamal**, modifiez les droits des fichiers : ```bash sudo chown -R root:root /var/lib/docker/volumes/project_storage/_data ```