easyctf-iv-platform/filestore/entrypoint.sh
Michael Zhang 4225cc4dde
Initial.
2018-02-20 22:37:10 -06:00

21 lines
777 B
Bash
Executable file

#!/bin/bash
set -e
cd /var/filestore/src
PYTHON=/usr/bin/python3
echo "determining bind location..."
BIND_PORT=${FILESTORE_PORT:-8000}
PRIVATE_BIND_ADDR_=$(curl -w "\n" http://169.254.169.254/metadata/v1/interfaces/private/0/ipv4/address --connect-timeout 2 || printf "0.0.0.0")
PRIVATE_BIND_ADDR=$(echo $BIND_ADDR_ | xargs)
PUBLIC_BIND_ADDR_=$(curl -w "\n" http://169.254.169.254/metadata/v1/interfaces/public/0/ipv4/address --connect-timeout 2 || printf "0.0.0.0")
PUBLIC_BIND_ADDR=$(echo $BIND_ADDR_ | xargs)
WORKERS=${WORKERS:-4}
ENVIRONMENT=${ENVIRONMENT:-production}
service nginx start
if [ "$ENVIRONMENT" == "development" ]; then
$PYTHON app.py
else
exec gunicorn --bind="$PRIVATE_BIND_ADDR:$BIND_PORT" --bind="$PUBLIC_BIND_ADDR:$BIND_PORT" -w $WORKERS app:app
fi