Complete setup guide for deploying Bastion in production with CockroachDB, MCP/A2A servers, and a resilient embedding chain.
Prerequisites
✓ Python 3.11+
✓ CockroachDB cluster (Serverless or Dedicated)
✓ (Optional) HF_TOKEN for HuggingFace embedding API
✓ Node.js 18+ (for dashboard)
Environment Variables
See the Configuration Reference for the full list of environment variables.
Start MCP Server
# Mock mode
python -m bastion.mcp_server --mock
# With CockroachDB
export BASTION_CONN="postgresql://user:pass@host:26257/bastion?sslmode=verify-full"
python -m bastion.mcp_server --transport http --port 9997
Start A2A Server
# Mock mode
python -m bastion.a2a_server
# With persistent identity
export BASTION_A2A_PRIVATE_KEY="base64-encoded-ed25519-key"
python -m bastion.a2a_server
Start Dashboard
cd dashboard
npm install
npm run dev
# Dashboard available at http://localhost:3000
Docker Deployment
git clone https://github.com/dgboy-ai/Bastion
cd Bastion
docker compose -f docker-compose.demo.yml up
# Dashboard at http://localhost:3000