Local Deployment
Simple local DataVault setup with Hugging Face embeddings
Local Setup: Deploy DataVault on your local machine with local files and Hugging Face embedding models.
If your network uses SSL inspection or internal certificates, you may need to mount your company CA bundle and set
VAULT_CUSTOM_CA_FILE so downloads (Hugging Face models, rclone) work without disabling certificate checks.
Setup
Create your project directory:
mkdir datavault-local && cd datavault-local
mkdir -p {config,data,documents}Configuration
Environment File
VAULT_ID=your-vault-id-from-dashboard
VAULT_SECRET=your-vault-secret-from-dashboard
MEINGPT_URL=https://app.meingpt.comMain Configuration
version: 1.0
meingpt_url: $MEINGPT_URL
vault:
id: $VAULT_ID
secret: $VAULT_SECRET
standalone_mode: false
data_dir: ./tmp
ingestion_interval: 300
tasks_batch_size: 3
chunk_size: 256
chunk_overlap: 26
weaviate:
connection_type: local
host: weaviate
port: 8001
grpc_host: weaviate
grpc_port: 50051
api_key: ""
embedding_model:
provider: "huggingface_local"
model: "sentence-transformers/all-mpnet-base-v2"
rpm: 1000
tpm: 100000
logging:
log_level: "INFO"
log_to_file: true
log_file_path: "logs/app.log"
uvicorn_log_file_path: "logs/uvicorn.log"
data_pools:
- id: local-documents
type: local
base_path: ./documentsDocker Compose
services:
vault:
image: meingpt/vault:latest
ports:
- 8080:8080
depends_on:
- weaviate
networks:
- vault_network
volumes:
- ./config/app_config.yaml:/app/src/vault/config/app_config.yaml:ro
- ./data:/data/vault
- ./documents:/app/documents:ro
environment:
- VAULT_CONFIG_FILE_PATH=/app/src/vault/config/app_config.yaml
env_file:
- ./config/vault.env
piko:
image: ghcr.io/andydunstall/piko:latest
command:
- agent
- http
- your-vault-id-from-dashboard
- vault:8080
- --connect.url
- https://piko.deploy.selectcode.dev
env_file:
- ./config/vault.env
networks:
- vault_network
weaviate:
image: cr.weaviate.io/semitechnologies/weaviate:1.28.3
command:
- --host
- 0.0.0.0
- --port
- '8001'
- --scheme
- http
expose:
- 8001
- 50051
volumes:
- weaviate_data:/var/lib/weaviate
restart: on-failure:3
environment:
QUERY_DEFAULTS_LIMIT: 25
PERSISTENCE_DATA_PATH: '/var/lib/weaviate'
ENABLE_API_BASED_MODULES: 'true'
CLUSTER_HOSTNAME: 'node1'
ports:
- 8001:8001
- 50051:50051
networks:
- vault_network
volumes:
weaviate_data:
networks:
vault_network:Deploy
- Add documents to the
documents/folder - Start services:
docker compose up -d - Check health:
curl http://localhost:8080/health - Monitor logs:
docker compose logs -f vault
Troubleshooting
- Check service status:
docker compose ps - View logs:
docker compose logs vault - Test Weaviate:
curl http://localhost:8001/v1/.well-known/ready - Restart services:
docker compose restart
That's it. Your local DataVault will process documents from the documents/ folder using local Hugging Face embeddings.