Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash -x
- PASSWORD=$(date +%s | sha256sum | base64 | head -c 32)
- # Enable to Remove all docker images and containers before install.
- #docker rm --force $(docker ps -a -q)
- #docker rmi --force $(docker images -q)
- docker run --name postgres -e POSTGRES_PASSWORD=$PASSWORD -d postgres
- docker run --name guacd -d guacamole/guacd
- docker run --name guacamole \
- --link guacd:guacd \
- --link postgres:postgres \
- -e POSTGRES_DATABASE=guacamole_db \
- -e POSTGRES_USER=guacamole_user \
- -e POSTGRES_PASSWORD=$PASSWORD \
- -d -p 80:8080 guacamole/guacamole
- docker exec -ti postgres /bin/bash -c "runuser -l postgres -c 'createdb guacamole_db'"
- echo "CREATE USER guacamole_user WITH PASSWORD '$PASSWORD';" > setupdb.sql
- echo "GRANT SELECT,INSERT,UPDATE,DELETE ON ALL TABLES IN SCHEMA public TO guacamole_user;" >> setupdb.sql
- echo "GRANT SELECT,USAGE ON ALL SEQUENCES IN SCHEMA public TO guacamole_user;" >> setupdb.sql
- echo " " >> setupdb.sql
- docker cp guacamole:/opt/guacamole/postgresql/schema/001-create-schema.sql 001-create-schema.sql
- docker cp guacamole:/opt/guacamole/postgresql/schema/002-create-admin-user.sql 002-create-admin-user.sql
- docker cp setupdb.sql postgres:/var/lib/postgresql/setupdb.sql
- docker cp 001-create-schema.sql postgres:/var/lib/postgresql/001-create-schema.sql
- docker cp 002-create-admin-user.sql postgres:/var/lib/postgresql/002-create-admin-user.sql
- docker exec -ti postgres /bin/bash -c "runuser -l postgres -c 'psql -d guacamole_db -f /var/lib/postgresql/setupdb.sql'"
- docker exec -ti -e "PGPASSWORD=$PASSWORD" postgres /bin/bash -c "/usr/bin/psql -d guacamole_db -U guacamole_user -f /var/lib/postgresql/001-create-schema.sql"
- docker exec -ti -e "PGPASSWORD=$PASSWORD" postgres /bin/bash -c "/usr/bin/psql -d guacamole_db -U guacamole_user -f /var/lib/postgresql/002-create-admin-user.sql"
Add Comment
Please, Sign In to add comment