I don’t know Paste or uwsgi. I didn’t change anything to Galaxy’s inner architecture or config.
My instance is based on Docker image bgruening/galaxy-stable:17.05.
But I just found a way to solve my problems. Here is what I did:
- Create a Docker container based on the same Docker image I used previously
and mapping to the same mapping directory I used previously and which contains
my datasets.
sudo docker run -d -p XXXX:80 -v /my/old/mapping/dir/:/export/ --name galaxy myGalaxyImage
sudo docker exec -it galaxy /bin/bash
- Back-up Postgresql database (inside Docker container).
su - galaxy
pg_dump -U galaxy -W -F t galaxy > dump_galaxy.tar
exit # exit from galaxy user
cp /home/galaxy/dump_galaxy.tar /export/galaxy-central/
- Create a new Docker container still based on the same Docker image
but mapping to a new, empty mapping directory.
sudo docker run -d -p XXXX:80 -v /my/new/mapping/dir/:/export/ --name galaxy_clean myGalaxyImage
- Copy back-uped database from the “old” mapping directory to the “new” mapping directory
sudo cp /my/old/mapping/dir/galaxy-central/dump_galaxy.tar /my/new/mapping/dir/galaxy-central/
- Connect to “new” Docker container
sudo docker exec -it galaxy_clean /bin/bash
- Restore the back-uped Postgresql database (inside “new” Docker container).
cp /export/galaxy-central/dump_galaxy.tar /home/galaxy
su - galaxy
pg_restore -d galaxy dump_galaxy.tar -c -U galaxy
exit # exit from galaxy user
exit # exit from Docker container
- Copy datasets files from “old” container to “new” one
(which are stored in /export/galaxy-central/database/)
sudo tar czf /my/old/mapping/dir/galaxy-central/database.tar.gz /my/old/mapping/dir/galaxy-central/database
sudo cp /my/old/mapping/dir/galaxy-central/database.tar.gz /my/new/mapping/dir/galaxy-central/database.tar.gz
sudo mv /my/new/mapping/dir/galaxy-central/database /my/new/mapping/dir/galaxy-central/database_bak
sudo tar xzf /my/new/mapping/dir/galaxy-central/database.tar.gz
- Restart “new” Docker container
sudo docker restart galaxy_clean
I don’t know if what I did is really clean but at least it allowed me to get back my datasets simply from the mapping directory.
Maybe this can help other people as well.