2013-06-09 18:12:57 -07:00
|
|
|
#!/bin/bash
|
2013-06-09 20:49:13 -07:00
|
|
|
APP="$1"; CONTAINER="$2"
|
2013-06-09 18:12:57 -07:00
|
|
|
|
|
|
|
|
if [[ ! -f "$HOME/$APP/PORT" ]]; then
|
|
|
|
|
# First deploy
|
|
|
|
|
ID=$(docker run -d -p 5000 -e PORT=5000 $CONTAINER /bin/bash -c "/start web")
|
|
|
|
|
echo $ID > "$HOME/$APP/CONTAINER"
|
|
|
|
|
PORT=$(docker inspect $ID | ruby -e 'require"json";puts JSON.parse(STDIN.read)["NetworkSettings"]["PortMapping"]["5000"]')
|
|
|
|
|
echo $PORT > "$HOME/$APP/PORT"
|
2013-06-10 18:55:35 -07:00
|
|
|
if [[ -f "$HOME/DOMAIN" ]]; then
|
2013-06-10 19:53:34 -07:00
|
|
|
HOSTNAME="${APP/\//-}.$(< "$HOME/DOMAIN")"
|
|
|
|
|
$HOME/nginx-app-conf ${APP/\//-} $PORT $HOSTNAME > $HOME/$APP/nginx.conf
|
2013-06-09 18:12:57 -07:00
|
|
|
nc -U $HOME/reload-nginx
|
|
|
|
|
else
|
2013-06-10 02:13:47 -07:00
|
|
|
HOSTNAME="$(< "$HOME/HOSTNAME"):$PORT"
|
2013-06-09 18:12:57 -07:00
|
|
|
fi
|
|
|
|
|
echo $HOSTNAME > "$HOME/$APP/HOSTNAME"
|
|
|
|
|
else
|
|
|
|
|
# Regular deploy
|
|
|
|
|
OLDID=$(< "$HOME/$APP/CONTAINER")
|
|
|
|
|
docker kill $OLDID > /dev/null
|
|
|
|
|
PORT=$(< "$HOME/$APP/PORT")
|
|
|
|
|
ID=$(docker run -d -p ":$PORT" -e "PORT=$PORT" $CONTAINER /bin/bash -c "/start web")
|
|
|
|
|
echo $ID > "$HOME/$APP/CONTAINER"
|
|
|
|
|
fi
|