Mercurial > hg > soundsoftware-site
annotate extra/soundsoftware/scripted-deploy/docker/start.sh @ 1586:d0d59d12db94 dockerise
Add some cron scripts, update
author | Chris Cannam |
---|---|
date | Wed, 16 Aug 2017 16:58:22 +0100 |
parents | ae8043b014c7 |
children |
rev | line source |
---|---|
Chris@1569 | 1 #!/bin/bash |
Chris@1569 | 2 |
Chris@1586 | 3 mydir=$(dirname "$0") |
Chris@1586 | 4 |
Chris@1574 | 5 dbpwd="$1" |
Chris@1574 | 6 if [ -z "$dbpwd" ]; then |
Chris@1574 | 7 echo "Usage: $0 <database-password>" 1>&2 |
Chris@1574 | 8 exit 2 |
Chris@1574 | 9 fi |
Chris@1574 | 10 |
Chris@1569 | 11 set -eu |
Chris@1569 | 12 |
Chris@1586 | 13 sswdir="$mydir/../.." |
Chris@1586 | 14 rootdir="$sswdir/../.." |
Chris@1586 | 15 |
Chris@1586 | 16 deploydir="$sswdir"/scripted-deploy |
Chris@1581 | 17 if [ ! -d "$deploydir" ]; then |
Chris@1586 | 18 echo "ERROR: Unexpected repository layout - expected directory at $deploydir" |
Chris@1569 | 19 exit 2 |
Chris@1569 | 20 fi |
Chris@1569 | 21 |
Chris@1581 | 22 managerdir="$deploydir/docker" |
Chris@1581 | 23 if [ ! -d "$managerdir" ]; then |
Chris@1581 | 24 echo "ERROR: Required directory $managerdir not found" |
Chris@1581 | 25 exit 2 |
Chris@1581 | 26 fi |
Chris@1581 | 27 |
Chris@1581 | 28 configdir="$deploydir/config" |
Chris@1581 | 29 if [ ! -d "$configdir" ]; then |
Chris@1581 | 30 echo "ERROR: Required directory $configdir not found" |
Chris@1581 | 31 exit 2 |
Chris@1581 | 32 fi |
Chris@1581 | 33 |
Chris@1586 | 34 if [ ! -f "$rootdir/postgres-dumpall" ]; then |
Chris@1586 | 35 echo "ERROR: I expect to find a Postgres SQL multi-db dump file in $rootdir/postgres-dumpall" |
Chris@1586 | 36 exit 2 |
Chris@1586 | 37 fi |
Chris@1586 | 38 |
Chris@1586 | 39 fontdir="$rootdir"/public/themes/soundsoftware/stylesheets/fonts |
Chris@1586 | 40 if [ ! -f "$fontdir/24BC0E_0_0.woff" ]; then |
Chris@1586 | 41 echo "ERROR: I expect to find necessary webfonts in $fontdir" |
Chris@1581 | 42 exit 2 |
Chris@1581 | 43 fi |
Chris@1581 | 44 |
Chris@1574 | 45 for f in database.yml code.conf ; do |
Chris@1581 | 46 cat "$configdir/$f" | |
Chris@1574 | 47 sed 's/INSERT_POSTGRES_PASSWORD_HERE/'"$dbpwd"'/g' > \ |
Chris@1581 | 48 "$configdir/$f.interpolated" |
Chris@1574 | 49 done |
Chris@1574 | 50 |
Chris@1586 | 51 cd "$rootdir" |
Chris@1586 | 52 |
Chris@1569 | 53 dockertag="cannam/soundsoftware-site" |
Chris@1569 | 54 |
Chris@1581 | 55 sudo docker build -t "$dockertag" -f "$managerdir/Dockerfile" . |
Chris@1571 | 56 sudo docker run -p 8080:80 -d "$dockertag" |
Chris@1569 | 57 |