Add postgres/docker-compose-postgres.yml
This commit is contained in:
parent
3942e4c502
commit
c1fe9e19bd
47
postgres/docker-compose-postgres.yml
Normal file
47
postgres/docker-compose-postgres.yml
Normal file
@ -0,0 +1,47 @@
|
||||
services:
|
||||
postgres:
|
||||
image: ${POSTGRESQL_IMAGE}
|
||||
container_name: ${POSTGRESQL_CONTAINER_NAME}
|
||||
hostname: ${POSTGRESQL_HOSTNAME_NAME}
|
||||
environment:
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
restart: always
|
||||
ports:
|
||||
- "5432:5432"
|
||||
volumes:
|
||||
- ./data:/var/lib/postgresql/data
|
||||
- ./backups:/backups
|
||||
networks:
|
||||
- postgres-network
|
||||
|
||||
|
||||
|
||||
init-db:
|
||||
image: ${POSTGRESQL_IMAGE}
|
||||
container_name: ${INITDB_CONTAINER_NAME}
|
||||
environment:
|
||||
POSTGRES_USER: ${POSTGRES_USER}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
||||
POSTGRES_DB: ${POSTGRES_DB}
|
||||
volumes:
|
||||
- ./backups:/backups
|
||||
depends_on:
|
||||
- postgres
|
||||
networks:
|
||||
- postgres-network
|
||||
entrypoint: >
|
||||
bash -c "
|
||||
echo 'Waiting for PostgreSQL to start...';
|
||||
until pg_isready -h postgres -U admin; do sleep 1; done;
|
||||
echo 'Creating database and restoring backup...';
|
||||
psql -h postgres -U admin -c 'CREATE DATABASE mydb;';
|
||||
pg_restore -h postgres -U admin -d mydb /backups/backup.dump;
|
||||
echo 'Backup restored successfully.';
|
||||
"
|
||||
restart: on-failure
|
||||
|
||||
networks:
|
||||
postgres-network:
|
||||
driver: bridge
|
||||
Loading…
x
Reference in New Issue
Block a user