Releases: 514-labs/dbareana
v0.3.1 - Bulk Operations
dbarena v0.3.1 Release Notes
Release Date: January 24, 2026
Overview
Version 0.3.1 introduces powerful bulk execution capabilities, allowing you to run commands across multiple database containers simultaneously. This release focuses on enhanced operational efficiency and improved error handling for multi-container workflows.
🚀 New Features
Bulk Command Execution
Execute shell commands across one or multiple containers with flexible targeting options:
# Single container
dbarena exec postgres-1 -- psql -U postgres -c "SELECT version();"
# All containers
dbarena exec --all -- echo "Hello from all containers"
# Pattern filtering (glob-style)
dbarena exec --filter 'postgres-*' -- pg_isready
# Multiple specific containers
dbarena exec db1 db2 db3 -- hostname
# Parallel execution (fast!)
dbarena exec --all --parallel -- your-commandFeatures:
- Sequential execution (default): Run commands one container at a time
- Parallel execution (
--parallel): Run commands simultaneously across all targets (3-5x faster) - Pattern filtering (
--filter): Use glob patterns to target containers by name - Custom user/workdir: Specify execution context with
--userand--workdirflags - Comprehensive error handling: See detailed success/failure summary for all operations
Query Command (Renamed)
The SQL query execution command has been renamed from exec to query for clarity:
# Inline SQL
dbarena query postgres-1 --script "SELECT current_database();"
# SQL file
dbarena query postgres-1 --file schema.sql
# Interactive mode
dbarena query -i --script "SELECT version();"This separates database-specific SQL execution from general shell command execution.
📊 Enhanced Error Handling
Multi-container operations now provide clear execution summaries:
────────────────────────────────────────────────────────────────────────────────
Execution Summary
────────────────────────────────────────────────────────────────────────────────
✓ 2 container(s) succeeded:
• postgres-1
• postgres-2
✗ 1 container(s) failed:
• postgres-3 - Exit code: 1
2/3 successful
Error Handling Benefits:
- ✅ Individual container results: See each container's outcome immediately
- ✅ Detailed failure information: Exit codes and error messages for each failure
- ✅ No early termination: All containers execute even if some fail
- ✅ Non-zero exit code: Script-friendly error propagation
🎯 Use Cases
Database Migrations Across Fleet
# Run migration script on all PostgreSQL containers
dbarena exec --filter 'postgres-*' --parallel -- \
psql -U postgres -f /migrations/v2.sqlHealth Checks
# Check if all databases are ready
dbarena exec --all -- pg_isreadyBatch Configuration
# Update configuration across all containers
dbarena exec --all --parallel -- \
sh -c 'echo "shared_preload_libraries = pg_stat_statements" >> /etc/postgresql/postgresql.conf'Performance Testing
# Run pgbench on multiple databases simultaneously
dbarena exec --filter 'bench-*' --parallel -- \
pgbench -U postgres -c 10 -j 2 -t 1000🔧 Technical Details
Parallel Execution Performance
Parallel mode uses Rust's futures::join_all to execute commands concurrently:
- Sequential: Time = sum of all execution times
- Parallel: Time = max of all execution times
- Speedup: Typically 3-5x faster for I/O-bound operations
Example from our tests:
- Sequential: 6.2 seconds (3 containers with 2s, 1s, 3s sleep)
- Parallel: 3.3 seconds (runs all simultaneously)
Error Collection
Both sequential and parallel modes:
- Collect all results before summarizing
- Never short-circuit on first error
- Provide complete visibility into all failures
- Return non-zero exit code if any container fails
📦 Installation
Quick Install (Unix/Linux/macOS)
curl -sSL https://raw.githubusercontent.com/514-labs/dbareana/main/cli/install.sh | bashManual Installation
Download the binary for your platform:
- macOS (Apple Silicon): dbarena-aarch64-apple-darwin
- macOS (Intel): dbarena-x86_64-apple-darwin
- Linux (x86_64): dbarena-x86_64-unknown-linux-gnu
Make it executable and move to your PATH:
chmod +x dbarena-*
sudo mv dbarena-* /usr/local/bin/dbarenaVerify Installation
dbarena --version
# Output: dbarena 0.3.1🔄 Upgrade from v0.3.0
Breaking Changes
None! v0.3.1 is fully backward compatible with v0.3.0.
Command Changes
dbarena exec <container> --script <sql>→dbarena query <container> --script <sql>- Old
execcommand is nowqueryfor SQL execution - New
execcommand is for shell command execution
If you were using the old SQL exec command, simply replace exec with query in your scripts.
📚 Documentation
- Bulk Operations Guide: See examples and best practices in the updated README
- Error Handling: Complete guide to interpreting execution summaries
- Performance Tips: When to use parallel vs sequential execution
🐛 Bug Fixes
- Fixed Docker error messages not being captured properly in multi-container operations
- Improved error messages for stopped/paused containers
- Better handling of container name resolution with patterns
🙏 Acknowledgments
This release continues our focus on operational excellence and developer productivity. The bulk execution feature was designed based on real-world use cases from database testing and migration workflows.
📋 Full Changelog
Added
dbarena execcommand for shell command execution across containers--allflag to target all running containers--filterflag for glob-pattern container filtering--parallelflag for concurrent command execution--userand--workdirflags for execution context- Comprehensive execution summary for multi-container operations
dbarena querycommand (renamed fromexec) for SQL execution
Changed
- SQL execution command renamed from
exectoquery
Fixed
- Error messages now properly captured in multi-container scenarios
- Non-zero exit codes correctly propagated to calling shell
🔮 Coming Next: v0.3.2
The next release will focus on:
- Network Configuration: Custom networks and container connectivity
- Container Templates: Reusable configuration templates
Stay tuned!
Full v0.3.x Series:
- v0.3.0 - Performance Monitoring, Snapshots, Volumes
- v0.3.1 - Bulk Operations (current)
- v0.3.2 - Network & Templates (coming soon)
SHA256 Checksums
5c8e48d3ae3a4e603bff66d9a857ab9986c11be72d24040989cd454abec1633a dbarena-aarch64-apple-darwin
Verify the download:
shasum -a 256 dbarena-aarch64-apple-darwindbarena v0.3.0 - Performance Monitoring, Snapshots, and Volumes
dbarena v0.3.0 Release Notes
Release Date: January 25, 2026
Codename: Performance, Snapshots, and Volumes
🎉 Overview
dbarena v0.3.0 introduces three major feature sets that significantly enhance database container management: real-time performance monitoring with an interactive TUI, container snapshots for state preservation, and comprehensive volume management for data persistence.
This release adds 3,444 lines of new code across 30 files while maintaining 100% backwards compatibility with v0.2.1.
✨ New Features
1. Performance Monitoring 📊
Real-time container metrics collection and visualization powered by Docker stats API.
Features:
- Real-time metrics collection: CPU, memory, network I/O, and block I/O
- Interactive TUI: Beautiful terminal UI with charts, gauges, and live updates (powered by Ratatui)
- Multiple output modes:
- Simple text output for quick checks
- Live updates with
--follow(refresh every 2s) - Interactive TUI with
--tui(charts, gauges, keyboard controls) - JSON output with
--jsonfor scripting
- Multi-container monitoring: Monitor all containers with
--allflag - Rate calculations: Automatic calculation of bytes/sec for network and disk I/O
Commands:
# One-time stats
dbarena stats <container>
# Live text updates
dbarena stats <container> --follow
# Interactive TUI dashboard
dbarena stats <container> --tui
# All containers in JSON
dbarena stats --all --jsonTUI Features:
- Real-time CPU and memory gauges with color-coded thresholds
- 60-second history charts (sparklines) for CPU and memory
- Network I/O statistics with rates
- Block I/O statistics with rates
- Keyboard controls: q (quit), f (freeze), r (reset), h (help)
2. Container Snapshots 📸
Save and restore container state as Docker images with metadata.
Features:
- Create snapshots from running containers (auto-pause supported)
- Restore containers from snapshots with custom names and ports
- Snapshot metadata: Labels, timestamps, messages, database type
- Full lifecycle management: create, list, restore, delete, inspect
- Docker integration: Uses Docker commit API with proper labeling
Commands:
# Create snapshot
dbarena snapshot create <container> --name <snapshot-name> \
--message "Description"
# List all snapshots
dbarena snapshot list [--json]
# Restore to new container
dbarena snapshot restore <snapshot> --name <new-name> --port <port>
# Delete snapshot
dbarena snapshot delete <snapshot> [--yes]
# Inspect details
dbarena snapshot inspect <snapshot> [--json]Use Cases:
- Save database state before migrations
- Create testing environments from production snapshots
- Backup container state at specific points in time
- Quick rollback to known-good states
3. Volume Management 💾
Comprehensive volume lifecycle management for data persistence.
Features:
- Named volumes: Docker-managed volumes with automatic cleanup
- Bind mounts: Host directory mounts for local development
- Volume CRUD: Complete create, read, update, delete operations
- Label filtering: Only show dbarena-managed volumes by default
- Integration: Volume specifications in container config
Commands:
# Create volume
dbarena volume create <name> [--mount-path <path>]
# List volumes (dbarena-managed only by default)
dbarena volume list [--all] [--json]
# Delete volume
dbarena volume delete <name> [--force] [--yes]
# Inspect details
dbarena volume inspect <name> [--json]Configuration Support:
[databases.postgres]
auto_volume = true
volume_path = "/var/lib/postgresql/data"
[[databases.postgres.volumes]]
name = "postgres-data"
path = "/var/lib/postgresql/data"
read_only = false
[[databases.postgres.bind_mounts]]
host = "./backups"
container = "/backups"🔧 Configuration Enhancements
New Configuration Sections
Monitoring Configuration:
[monitoring]
enabled = true
interval_seconds = 2
cpu_warning_threshold = 75.0
memory_warning_threshold = 80.0Snapshots Configuration:
[snapshots]
auto_pause = true
storage_path = "~/.local/share/dbarena/snapshots"
max_snapshots_per_container = 10Database Volume Configuration:
[databases.postgres]
auto_volume = true
volume_path = "/var/lib/postgresql/data"
[[databases.postgres.volumes]]
name = "pg-data"
path = "/var/lib/postgresql/data"
read_only = falseVersion Tracking
- Added
versionfield to config schema for future migrations - Current version: "0.3.0"
🧪 Testing
Comprehensive Test Suite
- 80 unit tests (added 17 new tests for v0.3.0)
- Integration tests for stats collection and container lifecycle
- Smoke tests: 16/16 passing (documented in SMOKE_TEST_RESULTS_v0.3.0.md)
- Test coverage:
- Metrics calculation and rate computation
- Byte/rate formatting functions
- Snapshot metadata and lifecycle
- Volume configuration and management
- TUI helper functions
- Config schema merging
Test Results
Unit Tests: 80 passed, 0 failed
Smoke Tests: 16 passed, 0 failed
Coverage: Comprehensive coverage of all new features
📦 Dependencies
New Dependencies
- ratatui 0.26: Terminal UI framework for interactive dashboards
- crossterm 0.27: Cross-platform terminal manipulation
Dependency Philosophy
- Minimal dependencies, maximum functionality
- Well-maintained, popular crates only
- Security-conscious dependency selection
🐛 Bug Fixes
Snapshot Label Formatting
- Issue: Docker commit API rejected label syntax
- Fix: Changed from joined string to newline-separated LABEL instructions
- Impact: Snapshots now work correctly with Docker API
- File:
src/snapshot/storage.rs
🔄 Backwards Compatibility
100% Compatible with dbarena v0.2.1:
- All existing commands work unchanged
- Config files are fully backwards compatible
- New config sections are optional
- Existing containers continue working
- No data migration required
📊 Statistics
Code Changes
- Files modified: 12
- Files added: 18
- Lines added: 3,444
- Lines removed: 3
- Modules created: 3 (monitoring, snapshot, volume)
Feature Breakdown
- Performance Monitoring: ~800 lines
- Snapshots: ~400 lines
- Volumes: ~300 lines
- CLI Commands: ~400 lines
- Tests: ~600 lines
- Config & Integration: ~300 lines
🚀 Migration Guide
From v0.2.1 to v0.3.0
No breaking changes! Simply upgrade:
# Update binary
curl -sSL https://raw.githubusercontent.com/514-labs/dbareana/main/dbarena/install.sh | bash
# Verify version
dbarena --version
# Output: dbarena 0.3.0
# All existing functionality works as before
dbarena list
dbarena create postgres
# ... etcOptional: Enable new features in config:
# Add to your config file (optional)
version = "0.3.0"
[monitoring]
enabled = true
[snapshots]
auto_pause = true📚 Documentation
New Documentation
SMOKE_TEST_RESULTS_v0.3.0.md: Comprehensive test report- Updated CLI help text for all new commands
- Extended config schema documentation
Command Help
All new commands include detailed --help output:
dbarena stats --help
dbarena snapshot --help
dbarena volume --help🎯 Use Cases
Development Workflow
- Create development environment:
dbarena create postgres --name dev-db - Monitor performance:
dbarena stats dev-db --tui - Save state before changes:
dbarena snapshot create dev-db --name before-migration - Make changes: Run migrations, test features
- Rollback if needed:
dbarena snapshot restore before-migration
Testing Workflow
- Create base container:
dbarena create postgres --name test-base - Load test data: Run seed scripts
- Create snapshot:
dbarena snapshot create test-base --name seeded - Parallel testing: Restore snapshot multiple times with different names
- Clean up:
dbarena snapshot delete seeded --yes
Production Monitoring
- Monitor containers:
dbarena stats --all --json > metrics.json - Process metrics: Parse JSON for dashboards/alerts
- Track performance: Compare metrics over time
- Identify issues: High CPU/memory usage alerts
🏆 Highlights
Interactive TUI
Professional terminal UI with:
- Real-time charts and gauges
- Color-coded thresholds (green/yellow/red)
- Keyboard navigation
- Pause/resume capability
- 60-second history visualization
Snapshot System
Industrial-strength snapshots with:
- Metadata preservation
- Docker image integration
- Unique ID generation
- Timestamp tracking
- Message annotations
Volume Management
Complete volume lifecycle with:
- Named volumes support
- Bind mounts support
- Read-only mounts
- Label-based filtering
- Config file integration
🔮 Future Roadmap
Planned for v0.3.1 (Bulk Operations)
- Parallel container operations
- Multi-progress indicators
- Bulk start/stop/restart
- Performance: 3-5x faster than sequential
Planned for v0.3.2 (Advanced Features)
- Custom network configuration
- Container connectivity
- Network isolation
- Container templates
- Template import/export
🙏 Acknowledgments
- Ratatui team: Excellent TUI framework
- Bollard team: Robust Docker API client
- Community feedback: Feature requests and bug reports
📝 Full Changelog
See commit history for detailed changes:
git log v0.2.1..v0.3.0🔗 Links
- Repository: https://github.com/514-labs/dbareana
- Issues: https://github.com/514-labs/dbareana/issues
- Documentation: https://github.com/514-labs/dbareana/tree/main/docs
📄 License
MIT OR Apache-2.0
Thank you for using dbarena! 🎉
For questions, issues, or feature requests, please visit our GitHub repository.
dbarena v0.2.1 - Ctrl+C Fix
dbarena v0.2.1 Release Notes
Release Date: 2026-01-24
Type: Patch Release
🐛 Bug Fixes
Fixed Ctrl+C (SIGINT) Handling
Issue: When pressing Ctrl+C to interrupt dbarena, the application did not exit cleanly. This could leave the terminal in an inconsistent state or prevent proper cleanup.
Fix: Added proper signal handling for Ctrl+C (SIGINT) using tokio's signal utilities.
Changes:
- Added
tokio::signal::ctrl_c()handler in main function - Uses
tokio::select!to gracefully handle interruption - Exits with standard code 130 for SIGINT
- Displays user-friendly message: "Interrupted by user (Ctrl+C)"
Example:
$ dbarena create postgres
Creating containers...
^C
Interrupted by user (Ctrl+C)
$ # Clean exit, terminal works normally📦 Installation
Quick Install
curl -sSL https://raw.githubusercontent.com/514-labs/dbareana/main/dbarena/install.sh | bashManual Download
Download from GitHub Releases:
curl -LO https://github.com/514-labs/dbareana/releases/download/v0.2.1/dbarena
chmod +x dbarena
sudo mv dbarena /usr/local/bin/Upgrade from v0.2.0
If you installed v0.2.0 using the install script, simply run the install script again:
curl -sSL https://raw.githubusercontent.com/514-labs/dbareana/main/dbarena/install.sh | bashOr manually:
curl -LO https://github.com/514-labs/dbareana/releases/download/v0.2.1/dbarena
chmod +x dbarena
sudo mv dbarena /usr/local/bin/dbarena🔍 Technical Details
Code Changes
File: src/main.rs
Before:
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let cli = Cli::parse();
// ... rest of code
}After:
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let result = tokio::select! {
result = run() => result,
_ = tokio::signal::ctrl_c() => {
eprintln!("\n\nInterrupted by user (Ctrl+C)");
std::process::exit(130);
}
};
result
}
async fn run() -> anyhow::Result<()> {
let cli = Cli::parse();
// ... rest of code
}Exit Codes
- Normal exit: 0
- Error exit: 1
- Ctrl+C (SIGINT): 130 (standard Unix convention: 128 + signal number 2)
🧪 Testing
Tested scenarios:
- ✅ Ctrl+C during interactive menu
- ✅ Ctrl+C during container creation
- ✅ Ctrl+C during long-running operations
- ✅ Normal exit still works (exit code 0)
- ✅ Error exit still works (exit code 1)
📊 What's Changed
- Files modified: 2 (Cargo.toml, src/main.rs)
- Lines changed: +14, -1
- New dependencies: None (uses existing tokio features)
🔄 Backwards Compatibility
100% compatible with v0.2.0
All v0.2.0 features continue to work exactly as before:
- Configuration management
- Initialization scripts
- SQL execution
- All CLI commands and flags
This is purely a bug fix release with no breaking changes.
📝 Changelog
v0.2.1 (2026-01-24)
- Fixed: Ctrl+C (SIGINT) now exits cleanly with proper signal handling
v0.2.0 (2026-01-24)
- Initial release with configuration management, init scripts, and SQL execution
🙏 Credits
Thanks to users who reported the Ctrl+C issue!
Contributors:
- Claude Sonnet 4.5 (Bug fix implementation)
📄 License
MIT OR Apache-2.0
🐛 Found a Bug?
Report issues at: https://github.com/514-labs/dbareana/issues
Full Changelog: v0.2.0...v0.2.1
dbarena v0.2.0 - Configuration Management
dbarena v0.2.0 Release Notes
Release Date: 2026-01-23
Status: Production Release
🎉 Major Features
Configuration Management System
v0.2.0 introduces a powerful configuration management system that allows you to manage database environments through declarative configuration files.
Key Features:
- TOML and YAML support - Use either format for your configs
- Environment profiles - Define named profiles (dev, staging, prod) with different settings
- Precedence layers - CLI > env-file > profile > config file > defaults
- File discovery - Automatic config loading from project, user, or default locations
- Validation - Built-in config validation with helpful error messages
Example:
[profiles.dev]
[profiles.dev.env]
POSTGRES_DB = "devdb"
POSTGRES_USER = "devuser"
POSTGRES_PASSWORD = "devpass"
[databases.postgres.profiles.dev]
version = "16"
port = 5432# Use a profile
dbarena create postgres --config dbarena.toml --profile dev
# Override specific values
dbarena create postgres --profile dev --env POSTGRES_USER=aliceInitialization Scripts
Automatically execute SQL scripts when containers are created.
Features:
- Multi-script support - Run multiple scripts in order
- Error detection - Database-specific error parsing with line numbers
- Error handling - Continue on error or stop (configurable)
- Automatic logging - All script output saved to
~/.local/share/dbarena/logs/ - Cross-database - Works with PostgreSQL, MySQL, and SQL Server
Example:
# Single script
dbarena create postgres --init-script schema.sql
# Multiple scripts (executed in order)
dbarena create postgres \
--init-script 01_schema.sql \
--init-script 02_seed_data.sql \
--init-script 03_indexes.sql
# Continue on errors
dbarena create postgres --init-script setup.sql --continue-on-errorSQL Execution Command
Execute SQL commands on running containers without connecting manually.
Features:
- Inline SQL - Execute SQL directly from command line
- File execution - Run SQL files
- Interactive selection - Choose which container to execute on
- Multiple queries - Execute multiple statements at once
Example:
# Inline SQL
dbarena exec my-postgres "SELECT * FROM users;"
# From file
dbarena exec my-postgres --file query.sql
# Interactive mode (prompts for container)
dbarena exec "CREATE TABLE test (id INT);"Configuration Utilities
New commands to help manage configurations.
Commands:
dbarena config validate- Validate config file syntax and semanticsdbarena config show- Display resolved configuration with profilesdbarena config init- Generate example configuration file
Example:
# Generate starter config
dbarena config init > dbarena.toml
# Validate your config
dbarena config validate --config dbarena.toml
# See what will be applied
dbarena config show --config dbarena.toml --profile dev📦 What's New
New Features
-
Configuration Files
- TOML and YAML parsing
- Environment profiles with inheritance
- Config file discovery (project > user > defaults)
- Validation with helpful error messages
-
Initialization Scripts
- Execute SQL scripts on container creation
- Multi-script execution with ordering
- Database-specific error parsing (PostgreSQL, MySQL, SQL Server)
- Continue-on-error behavior
- Automatic logging to
~/.local/share/dbarena/logs/
-
SQL Execution
- Execute inline SQL or from files
- Interactive container selection
- Support for all database types
-
New CLI Commands
config validate- Validate configuration filesconfig show- Display resolved configurationconfig init- Generate example configexec- Execute SQL on running containers
-
New CLI Flags
--config <path>- Specify config file--profile <name>- Select environment profile--env KEY=VALUE- Override environment variables--env-file <path>- Load environment from file--init-script <path>- Add initialization scripts (repeatable)--continue-on-error- Continue if init scripts fail--keep-on-error- Keep container if creation fails--log-dir <path>- Custom log directory
Improvements
-
Error Reporting
- Database-specific error parsing with line numbers
- Typo suggestions (e.g., "Did you mean INSERT?" for INSRT)
- Error codes for MySQL and SQL Server
- Context-aware error messages
-
Logging
- Automatic logging of init script execution
- Metadata tracking (duration, success/failure)
- Organized by container ID
- Easy troubleshooting with detailed logs
-
Documentation
- Comprehensive configuration guide (
docs/CONFIGURATION.md) - Init scripts documentation (
docs/INIT_SCRIPTS.md) - Exec command documentation (
docs/EXEC_COMMAND.md) - Migration guide from v0.1.0 (
docs/MIGRATION_V0.2.md)
- Comprehensive configuration guide (
Bug Fixes
- Fixed tmpfs mount preventing init script uploads (now uses
/var/dbarena_init) - Fixed PostgreSQL error detection (added
ON_ERROR_STOP=1) - Fixed continue-on-error logic with proper output parsing
- Fixed database selection for init scripts (uses
postgresdatabase)
🔧 Technical Details
New Modules
-
src/config/- Configuration managementschema.rs- Configuration data structuresloader.rs- File loading and discoveryvalidator.rs- Validation logicprofile.rs- Profile resolutionmerger.rs- Configuration merging
-
src/init/- Initialization scriptscopier.rs- File copying to containersexecutor.rs- Script executionlogs.rs- Log management
Dependencies Added
toml- TOML parsingserde_yaml- YAML parsingdirs- XDG directory utilitiesglob- Pattern matchingtar- TAR archive handlinguuid- Unique ID generation
Test Coverage
- 217+ tests total
- 99 unit tests (100% pass rate)
- 118+ integration tests (functional)
- Test categories:
- Configuration parsing and validation
- Profile resolution and merging
- Init script execution
- Error parsing
- SQL execution
- Backwards compatibility
📚 Documentation
New documentation files:
docs/CONFIGURATION.md- Complete configuration guidedocs/INIT_SCRIPTS.md- Initialization scripts guidedocs/EXEC_COMMAND.md- SQL execution guidedocs/MIGRATION_V0.2.md- Migration guide from v0.1.0MANUAL_TEST_RESULTS.md- Manual testing results
🔄 Backwards Compatibility
100% backwards compatible with v0.1.0.
All v0.1.0 commands and flags continue to work exactly as before:
# All these still work without any config files
dbarena create postgres
dbarena create mysql --port 3307
dbarena create sqlserver --memory 2048
dbarena list
dbarena stop <container>
dbarena start <container>
dbarena destroy <container>New features are opt-in - you only use them if you want to.
🚀 Migration Guide
From v0.1.0 to v0.2.0
No migration required! v0.2.0 is fully backwards compatible.
Optional: Start using new features
-
Generate a config file:
dbarena config init > dbarena.toml -
Define your environments:
[profiles.dev] [profiles.dev.env] POSTGRES_DB = "devdb" [profiles.prod] [profiles.prod.env] POSTGRES_DB = "proddb"
-
Use profiles:
dbarena create postgres --profile dev
-
Add init scripts to your workflow:
dbarena create postgres --profile dev --init-script schema.sql
See docs/MIGRATION_V0.2.md for detailed examples.
📥 Installation
Pre-built Binaries
Download from GitHub Releases:
- macOS (Apple Silicon):
dbarena-v0.2.0-aarch64-apple-darwin - macOS (Intel):
dbarena-v0.2.0-x86_64-apple-darwin - Linux (x86_64):
dbarena-v0.2.0-x86_64-unknown-linux-gnu - Linux (ARM64):
dbarena-v0.2.0-aarch64-unknown-linux-gnu
From Source
git clone https://github.com/yourusername/dbarena.git
cd dbarena
git checkout v0.2.0
cargo build --releaseBinary will be at target/release/dbarena.
🔜 What's Next
Planned for v0.3.0:
- Container snapshots and restore
- Network configuration
- Volume management
- Container templates
- Bulk operations
- Performance monitoring
👥 Contributors
- Claude Sonnet 4.5 (Development & Testing)
- [Your name here]
📄 License
MIT OR Apache-2.0
🐛 Known Issues
None at release time.
💬 Feedback
Found a bug? Have a feature request?
- Open an issue: https://github.com/yourusername/dbarena/issues
- Discussions: https://github.com/yourusername/dbarena/discussions
Full Changelog: v0.1.0...v0.2.0