-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstart_pgcli.sh
More file actions
40 lines (32 loc) · 1.38 KB
/
start_pgcli.sh
File metadata and controls
40 lines (32 loc) · 1.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# starting PostgreSQL in docker
# data will stay in folder ./amzn_volume so you can run it again without need to ingest data from scratch
#--network=bridge
POSTGRES_DBNAME=
POSTGRES_USER=
POSTGRES_PASSWORD=
POSTGRES_HOST=
POSTGRES_PORT=
if [[ -e ".env" ]]
then
# loading script parameters from .env
set -a
source .env
set +a
if [ -z "$POSTGRES_HOST" ] || [ -z "$POSTGRES_PORT" ] || [ -z "$POSTGRES_DBNAME" ] || [ -z "$POSTGRES_USER" ] || [ -z "$POSTGRES_PASSWORD" ]
then
echo "Not all PostgreSQL paramaters set/loaded from .env. Exiting."
exit 1
fi
else
echo "No .env file with PostgreSQL paramaters found. Exiting."
exit 1
fi
# docker run -it -e POSTGRES_USER=$POSTGRES_USER -e POSTGRES_PASSWORD=$POSTGRES_PASSWORD -e POSTGRES_DB=$POSTGRES_DBNAME -v "./amzn_volume:/var/lib/postgresql/data" -p $POSTGRES_PORT:5432 postgres
# check connection
# pass: postg
# pgcli -h 172.17.0.2 -p 5432 -u postg -d amzn_reviews
# echo "postgresql://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST:$POSTGRES_PORT/$POSTGRES_DBNAME"
# Getting all PostgreSQL parameters to execute pgcli without asking for password
PGPASSWORD=$POSTGRES_PASSWORD pgcli -h $POSTGRES_HOST -p $POSTGRES_PORT -u $POSTGRES_USER -d $POSTGRES_DBNAME
# 'plan B' approach
# pgcli "postgresql://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST:$POSTGRES_PORT/$POSTGRES_DBNAME"