You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.3 KiB
Bash
42 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
# Start PostgreSQL container for development
|
|
echo "Starting PostgreSQL container for Know Foolery development..."
|
|
|
|
# Stop and remove existing container if it exists
|
|
docker stop knowfoolery-postgres 2>/dev/null || true
|
|
docker rm knowfoolery-postgres 2>/dev/null || true
|
|
|
|
# Start PostgreSQL container
|
|
docker run -d \
|
|
--name knowfoolery-postgres \
|
|
-e POSTGRES_DB=knowfoolery \
|
|
-e POSTGRES_USER=knowfoolery \
|
|
-e POSTGRES_PASSWORD=dev-password-2024 \
|
|
-p 5432:5432 \
|
|
-v knowfoolery_postgres_data:/var/lib/postgresql/data \
|
|
postgres:15-alpine
|
|
|
|
echo "Waiting for PostgreSQL to be ready..."
|
|
sleep 10
|
|
|
|
# Check if PostgreSQL is ready
|
|
until docker exec knowfoolery-postgres pg_isready -U knowfoolery -d knowfoolery; do
|
|
echo "PostgreSQL is not ready yet. Waiting..."
|
|
sleep 2
|
|
done
|
|
|
|
echo "PostgreSQL is ready!"
|
|
|
|
# Initialize database with our schema
|
|
echo "Initializing database schema..."
|
|
docker exec -i knowfoolery-postgres psql -U knowfoolery -d knowfoolery < ../infrastructure/docker/init-db.sql
|
|
|
|
echo "PostgreSQL setup complete!"
|
|
echo "Database URL: postgres://knowfoolery:dev-password-2024@localhost:5432/knowfoolery?sslmode=disable"
|
|
echo ""
|
|
echo "To connect to the database:"
|
|
echo " docker exec -it knowfoolery-postgres psql -U knowfoolery -d knowfoolery"
|
|
echo ""
|
|
echo "To stop the database:"
|
|
echo " docker stop knowfoolery-postgres" |