sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur återställer man data från en raderad Docker-behållare? Hur återansluter man den till data?

Det är just därför, när jag skapar en databehållare, registrerar jag alltid dess sökväg i en fil. (se mitt skript updateDataContainerPath )

Användning (att användas precis efter att en databehållare har skapats):

docker inspect ${gitolite_repos_cont} > /dev/null 2>&1 || docker create --name="${gitolite_repos_cont}" gitolite.repos /bin/true

# source the script, to make the updatePath() function available
. ../updateDataContainerPath

# save the path in a file
updatePath ${gitolite_repos_cont} "$HOME/b2d/gitolite" ${grepos}

(här ${grepos} är filen där du registrerar eller sparar sökvägen till volymen för databehållaren)

Det skriptet kommer, om det redan fanns en sökväg som sparats för den databehållaren, ta bort den tomma databehållarmappen och flytta den gamla till den nya (och uppdatera den nya sökvägen)

sudo rm -Rf "${grpath}"
sudo mv "${fgrpath}" "${grpath}"

Det skulle hjälpa dig att svara på din fråga 2 och helt undvika din fråga 1.

På så sätt kan jag hantera vilken behållare som helst (inklusive en databehållare, utan -v alternativet förstås), och jag vet att nästa gång jag återskapar samma databehållare kommer jag att hitta tillbaka mina data.




  1. Formatera siffror med kommatecken i SQLite

  2. Tips för att flytta SQL Server-databas från en server till en annan - SQL Tutorial av Rajan Singh

  3. Vad är kardinalitet i MySQL?

  4. Kan du dela/explodera ett fält i en MySQL-fråga?