Deployment
Docker
Section titled “Docker”Hive ships with a Dockerfile and production docker-compose.yml.
# Builddocker build -t hive .
# Rundocker run -p 3000:3000 --env-file .env hiveDocker Compose (Production)
Section titled “Docker Compose (Production)”The production docker-compose.yml is configured for Traefik reverse proxy with automatic TLS. Customize the Traefik labels for your domain.
Requirements
Section titled “Requirements”- PostgreSQL 16+ (external or containerized)
- Node.js 22+ (if running from source)
- Reverse proxy recommended for TLS termination
Database Setup
Section titled “Database Setup”- Create a PostgreSQL database
- Run migrations:
npm run db:migrate - For tables not tracked by Drizzle, see the migration docs
User Permissions
Section titled “User Permissions”If your application connects as a different user than the migration user, grant permissions:
GRANT ALL ON ALL TABLES IN SCHEMA public TO your_app_user;GRANT ALL ON ALL SEQUENCES IN SCHEMA public TO your_app_user;Health Check
Section titled “Health Check”curl http://your-hive-url/api/health# Returns: {"status":"ok"}For detailed diagnostics (admin only):
curl http://your-hive-url/api/doctor -H "Authorization: Bearer YOUR_ADMIN_TOKEN"