discourse/bin/docker/boot_dev

52 lines
1.2 KiB
Plaintext
Raw Normal View History

2015-11-02 10:33:08 +08:00
#!/bin/bash
SCRIPTPATH=$(cd "$(dirname "$0")"; pwd -P)
SOURCE_DIR=$(cd "$SCRIPTPATH" && cd ../.. && pwd -P)
DATA_DIR=$SOURCE_DIR/tmp/postgres
2015-11-02 10:33:08 +08:00
show_help() {
cat <<EOF
2016-12-12 14:39:20 +08:00
Usage: ${0##*/} [-h] [--init]
2015-11-02 10:33:08 +08:00
--init perform first-time initialization
EOF
}
initialize=""
while [ "${#@}" -ne "0" ]; do
case "$1" in
-h | --help)
show_help
exit 0
;;
-i | --init)
initialize="initialize"
;;
*)
echo "unexpected argument: $1" >& 2
show_help >& 2
exit 1
;;
esac
shift
done
echo "Using source in: ${SOURCE_DIR}"
echo "Using data in: ${DATA_DIR}"
mkdir -p "${DATA_DIR}"
docker run -d -p 1080:1080 -p 3000:3000 -v $DATA_DIR:/shared/postgres_data -v $SOURCE_DIR:/src --hostname=discourse --name=discourse_dev --restart=always discourse/discourse_dev:latest /sbin/boot
if [ "${initialize}" = "initialize" ]; then
echo "Installing gems..."
${SCRIPTPATH}/bundle install
echo "Migrating database..."
${SCRIPTPATH}/rake db:migrate
2016-12-12 14:47:24 +08:00
RAILS_ENV=test ${SCRIPTPATH}/rake db:migrate
2015-11-02 10:33:08 +08:00
echo "Creating admin user..."
${SCRIPTPATH}/rake admin:create
fi