Spaces:
Running
Running
#! /bin/bash | |
##################################### | |
# Start text2vec-transformers and # | |
# Weaviate DB to run asynchronously # | |
# and wait. # | |
##################################### | |
exec &> /app/startup.log | |
echo "#### startup.sh entered." | |
echo "### ps -ef 1"; ps -ef | |
# Is startup.sh already running? | |
echo " " | |
echo "### before ps and grep startup.sh" | |
ps -ef | grep -i startup.sh | |
cnt=$(ps -ef | grep -i startup.sh | wc -l) | |
echo "### cnt: $cnt" | |
if [ $cnt -gt 3 ];then | |
echo "#### startup.sh already running. Exiting." | |
exit 0 | |
fi | |
# Make sure Weaviate DB directory exists. | |
echo "### Before mkdir -p ~/data/var/lib/weaviate" | |
weaviateDir=~/data/var/lib/weaviate | |
mkdir -p $weaviateDir | |
chmod -R 777 $weaviateDir | |
# Start tex2vec-transformers | |
echo "#### Before /app/text2vec-transformers" | |
cd /app/text2vec-transformers | |
/app/text2vec-transformers/bin/uvicorn app:app --host 0.0.0.0 --port 8081 --log-level warning --timeout-keep-alive 1440 & | |
echo "### After text2vec start. RC=$?" | |
cd /app | |
# Start the weaviate vector database server. | |
echo "#### Before /app/weaviate" | |
export AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true \ | |
PERSISTENCE_DATA_PATH=$weaviateDir \ | |
DEFAULT_VECTORIZER_MODULE=text2vec-transformers \ | |
ENABLE_MODULES=text2vec-transformers \ | |
TRANSFORMERS_INFERENCE_API=http://127.0.0.1:8081 \ | |
LOG_LEVEL=warning \ | |
MODULES_CLIENT_TIMEOUT=600s | |
/app/weaviate/weaviate --host 127.0.0.1 --port 8080 --scheme http --write-timeout 600s & | |
echo "### After Weaviate DB start. RC=$?" | |
#echo "### Before sleep 120" | |
#sleep 120 | |
echo "### Before wait." | |
echo "### ps -ef 2: "; ps -ef | |
wait | |