Spaces:
Sleeping
Sleeping
Docker Deployment Guide
This guide explains how to deploy Digital Galatea using Docker.
Quick Start
Using Pre-built Image from Docker Hub
docker run -d \
--name digital-galatea \
-p 7860:7860 \
-e DEEPSEEK_API_KEY=your_deepseek_api_key \
-e INFLECTION_AI_API_KEY=your_inflection_api_key \
codejediondockerhub/digital-galatea:latest
Using Docker Compose
- Create a
.envfile with your API keys (see.env.example) - Run:
docker-compose up -d
Building the Image
Build Locally
docker build -t digital-galatea:latest .
Build and Tag for Docker Hub
docker build -t codejediondockerhub/digital-galatea:latest .
Publishing to Docker Hub
Login to Docker Hub
docker loginTag the Image (if not already tagged)
docker tag digital-galatea:latest codejediondockerhub/digital-galatea:latestPush to Docker Hub
docker push codejediondockerhub/digital-galatea:latestPush with Version Tag (optional)
docker tag digital-galatea:latest codejediondockerhub/digital-galatea:v1.0.0 docker push codejediondockerhub/digital-galatea:v1.0.0
Environment Variables
Required Variables
DEEPSEEK_API_KEY- Your DeepSeek API keyINFLECTION_AI_API_KEY- Your Inflection AI API key
Optional Variables
AZURE_TEXT_ANALYTICS_KEY- Azure Text Analytics keyAZURE_TEXT_ANALYTICS_ENDPOINT- Azure endpoint URLPORT- Server port (default: 7860)
Running the Container
Basic Run
docker run -d \
--name digital-galatea \
-p 7860:7860 \
-e DEEPSEEK_API_KEY=your_key \
-e INFLECTION_AI_API_KEY=your_key \
codejediondockerhub/digital-galatea:latest
With Environment File
docker run -d \
--name digital-galatea \
-p 7860:7860 \
--env-file .env \
codejediondockerhub/digital-galatea:latest
With Volume for Persistence
docker run -d \
--name digital-galatea \
-p 7860:7860 \
-v $(pwd)/data:/app/data \
--env-file .env \
codejediondockerhub/digital-galatea:latest
Container Management
View Logs
docker logs digital-galatea
docker logs -f digital-galatea # Follow logs
Stop Container
docker stop digital-galatea
Start Container
docker start digital-galatea
Remove Container
docker rm digital-galatea
Restart Container
docker restart digital-galatea
Health Checks
The container includes a health check endpoint. You can verify it's running:
curl http://localhost:7860/health
Troubleshooting
Container Won't Start
- Check logs:
docker logs digital-galatea - Verify environment variables are set correctly
- Ensure port 7860 is not already in use
API Errors
- Verify API keys are correct
- Check network connectivity
- Review application logs for specific error messages
NLTK Data Download
NLTK data is downloaded automatically on first container start. This may take a few minutes. Check logs to see progress.
Production Considerations
- Use Environment Files: Store sensitive keys in
.envfiles (not in version control) - Resource Limits: Set appropriate memory and CPU limits
- Restart Policy: Use
--restart unless-stoppedfor automatic restarts - Health Checks: Monitor the
/healthendpoint - Logging: Configure log rotation and monitoring
Example production run:
docker run -d \
--name digital-galatea \
--restart unless-stopped \
-p 7860:7860 \
--memory="2g" \
--cpus="2" \
--env-file .env \
codejediondockerhub/digital-galatea:latest