Runnig postgres database in a docker container for a fast resotre option

preview_player
Показать описание
RUNNING A POSTGRES DATABASE IN DOCKER
1. what we need
- running docker instance
- database backup
- free space on disk
2. how to get data in
- start docker container with postgress (version you need)
and add a volume that contains the backup

docker run
-v /Users/profesor79/code/docker/volume/backup:/temp/backup # provide bacup disk
-e POSTGRES_PASSWORD=mysecretpassword # set password
--name postgrescontainer # set a friendly name
-e PGDATA=/pgdata # set data folder
postgres:13 # image name

- connect to interactive session
docker exec -it postgrescontainer /bin/bash

- create a datbase with psql (and run some prep scripts if needed)
psql -U postgres -h localhost

- run pg_restore
pg_restore -U postgres -h localhost -d local_db -j 8 /path/to/backup

- run some post-scripts (if needed)

3. how to store container state
- when backup will finish we need to commit this container

docker commit postgrescontainer mypostgressdatabase

4. now we can play with it

docker run
-v /Users/profesor79/code/docker/volume/backup:/temp/backup # provide bacup disk
-e POSTGRES_PASSWORD=mysecretpassword # set password
-p 0.0.0.0:5432:5432 # expose on port 5432
-e PGDATA=/pgdata # set data folder
mypostgressdatabase # image name







Рекомендации по теме
Комментарии
Автор

Nice man very informative for docker...
Thanks man

dipabhow
join shbcf.ru