3.2 KiB
3.2 KiB
title, description
| title | description |
|---|---|
| CLI Reference | Complete command-line interface reference |
Complete reference for all Kompose CLI commands and options.
Synopsis
./kompose.sh [OPTIONS] <PATTERN> <COMMAND> [ARGS...]
Options
Global Options
| Option | Short | Description |
|---|---|---|
--help |
-h |
Show help message |
--list |
-l |
List all available stacks |
--dry-run |
-n |
Preview actions without executing |
--network <n> |
Override network name | |
-e <KEY=VALUE> |
Set environment variable |
Examples
# Show help
./kompose.sh --help
# List all stacks
./kompose.sh --list
# Dry run mode
./kompose.sh --dry-run "*" up -d
# Override network
./kompose.sh --network staging "*" up -d
# Set environment variable
./kompose.sh -e DB_HOST=localhost news up -d
Stack Patterns
Pattern Syntax
*- All stacksstack1,stack2,stack3- Specific stacks (comma-separated)stack- Single stack
Examples
# All stacks
./kompose.sh "*" up -d
# Multiple specific stacks
./kompose.sh "auth,blog,news" logs -f
# Single stack
./kompose.sh proxy restart
Docker Compose Commands
Any Docker Compose command can be passed through:
# Start services
./kompose.sh <pattern> up -d
# Stop services
./kompose.sh <pattern> down
# View logs
./kompose.sh <pattern> logs -f
# Restart services
./kompose.sh <pattern> restart
# Pull images
./kompose.sh <pattern> pull
# Check status
./kompose.sh <pattern> ps
# Execute commands
./kompose.sh <pattern> exec <service> <command>
Database Commands
db:export
Export PostgreSQL database to SQL dump file.
./kompose.sh <pattern> db:export
Output: <stack-dir>/<db-name>_YYYYMMDD_HHMMSS.sql
db:import
Import PostgreSQL database from SQL dump file.
# Import latest dump (auto-detected)
./kompose.sh <stack> db:import
# Import specific dump file
./kompose.sh <stack> db:import path/to/dump.sql
:icon{name="lucide:alert-triangle"} WARNING: Drops and recreates the database!
db:cleanup
Remove old database dump files (keeps only the latest).
./kompose.sh <pattern> db:cleanup
Exit Codes
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | General error |
| 2 | Missing required arguments |
| 3 | No matching stacks |
Environment Variables
Environment variables can be set via:
- Root
.envfile - Stack
.envfile - CLI
-eflag (highest priority)
Precedence
CLI (-e flag) > Stack .env > Root .env > Compose defaults
Examples
Daily Workflow
# Morning: Start everything
./kompose.sh "*" up -d
# Check status
./kompose.sh "*" ps
# View logs
./kompose.sh "*" logs --tail=50
# Evening: Backup databases
./kompose.sh "*" db:export
./kompose.sh "*" db:cleanup
Deployment
# Pull latest images
./kompose.sh "*" pull
# Backup before update
./kompose.sh "*" db:export
# Restart with new images
./kompose.sh "*" down
./kompose.sh "*" up -d
# Verify health
./kompose.sh "*" ps
Development
# Start dev environment
./kompose.sh "data,proxy,news" up -d
# Override for testing
./kompose.sh -e DB_NAME=test_db news up -d
# Watch logs
./kompose.sh news logs -f
# Clean up
./kompose.sh news down