1
0
Fork 0
1Panel-Appstore/apps/open-notebook/1.7.3/scripts/init.sh

70 lines
1.6 KiB
Bash

#!/bin/bash
DOTENV_FILE="./.env"
DOCKER_ENV_FILE="./.docker.env"
REQUIRED_VARS=(
"OPEN_NOTEBOOK_PASSWORD"
"SURREAL_URL"
"SURREAL_USER"
"SURREAL_PASSWORD"
"SURREAL_NAMESPACE"
"SURREAL_DATABASE"
"OPENAI_API_KEY"
"ANTHROPIC_API_KEY"
"GEMINI_API_KEY"
"VERTEX_PROJECT"
"GOOGLE_APPLICATION_CREDENTIALS"
"VERTEX_LOCATION"
"DEEPSEEK_API_KEY"
"MISTRAL_API_KEY"
"GROQ_API_KEY"
"XAI_API_KEY"
"ELEVENLABS_API_KEY"
"OLLAMA_API_BASE"
"OPENROUTER_BASE_URL"
"OPENROUTER_API_KEY"
"AZURE_OPENAI_API_KEY"
"AZURE_OPENAI_ENDPOINT"
"AZURE_OPENAI_API_VERSION"
"AZURE_OPENAI_DEPLOYMENT_NAME"
"OPENAI_COMPATIBLE_BASE_URL"
"OPENAI_COMPATIBLE_API_KEY"
"FIRECRAWL_API_KEY"
"JINA_API_KEY"
"VOYAGE_API_KEY"
"LANGCHAIN_TRACING_V2"
"LANGCHAIN_ENDPOINT"
"LANGCHAIN_API_KEY"
"LANGCHAIN_PROJECT"
)
> $DOCKER_ENV_FILE
cat > $DOCKER_ENV_FILE << 'EOF'
SURREAL_URL=ws://localhost:8000/rpc
SURREAL_USER=root
SURREAL_PASSWORD=root
SURREAL_NAMESPACE=open_notebook
SURREAL_DATABASE=production
EOF
while IFS= read -r line || [ -n "$line" ]; do
if [[ -z "$line" || "$line" =~ ^[[:space:]]*# ]]; then
continue
fi
if [[ "$line" =~ ^([^=]+)=(.*)$ ]]; then
key="${BASH_REMATCH[1]}"
value="${BASH_REMATCH[2]}"
value=$(echo "$value" | sed -e 's/^"//' -e 's/"$//' -e "s/^'//" -e "s/'$//")
export "$key"="$value"
fi
done < "$DOTENV_FILE"
for var in "${REQUIRED_VARS[@]}"; do
value="${!var}"
if [ -n "$value" ]; then
echo "$var=$value" >> "$DOCKER_ENV_FILE"
fi
done