Skip to main content

Documentation Index

Fetch the complete documentation index at: https://test.pzona.fun/llms.txt

Use this file to discover all available pages before exploring further.

This quickstart walks you through creating a local database container, retrieving its connection string, and verifying that the database is ready to accept connections. By the end, you will have a running PostgreSQL, MySQL, or Redis container and a DB_URL you can drop straight into your project.
1

Create your first database

Run mkdb start to launch the interactive setup. mkdb prompts you for the database type, a name, authentication preference, and volume option:
mkdb start
Follow the prompts:
? Select database type: postgres
? Enter database name: devdb
? Enable authentication? (recommended) Yes
? Do you want to create a volume for this database? named
After mkdb pulls the image and starts the container, it prints your connection string and expiry time:
✓ Database 'devdb' created successfully!

╭──────────────────────────────────────────────────────────╮
│ DB_URL=postgresql://dbuser:M3kP9xL2vN7w@localhost:5432/devdb │
╰──────────────────────────────────────────────────────────╯

ℹ Database will expire in 2 hours (at 2025-12-23 17:00:00)
ℹ Use 'mkdb start --repeat' to quickly create another database with the same settings
If you already know what you want, skip the prompts with flags:
mkdb start --db postgres --name mydb
2

Save your connection string

Retrieve your connection string at any time with mkdb creds get:
mkdb creds get --name mydb
Output:
DB_URL=postgresql://dbuser:Xy9k2mN8pL4v@localhost:5432/mydb
Append it directly to your .env file:
mkdb creds get --name mydb >> .env
Or copy it to your clipboard:
mkdb creds copy --name mydb
3

Verify the connection

Confirm the database is reachable by running a test query:
mkdb test --name mydb
You can also use the ping alias:
mkdb ping --name mydb
mkdb runs a lightweight query against the container and displays the result. For PostgreSQL it executes SELECT 1 as status, current_user, current_database();, and for Redis it sends a PING command.
4

List your databases

See all containers mkdb is tracking:
mkdb list
Or use the shorter alias:
mkdb ls
The output is a formatted table with the following columns:
ColumnDescription
NameContainer name you assigned at creation
TypeDatabase engine: postgres, mysql, or redis
StatusCurrent state: running, stopped, or expired
PortHost port the container is bound to
TTL remainingTime left before automatic cleanup
Filter by type or status when you have many containers:
mkdb ls --type postgres --status running
5

Stop or remove the database

Stop the container to pause it and preserve all data on disk:
mkdb stop --name mydb
You can restart it later with mkdb restart --name mydb.Remove the container when you no longer need it. This permanently deletes the container and its volume:
mkdb rm --name mydb
Containers expire after 2 hours by default. When a container expires, mkdb stops and removes it along with its volume. To set a longer lifetime, pass --ttl when you create the database — for example, mkdb start --db postgres --name mydb --ttl 48 keeps the container alive for 48 hours. You can also extend an existing container’s lifetime with mkdb extend --name mydb --hours 24.

Next steps

All start flags

Explore every option available when creating a database container.

Manage TTL

Configure default lifetimes and extend containers before they expire.

Volume options

Choose between named volumes, custom paths, or no persistence.

Credentials

Retrieve, copy, and rotate connection strings and passwords.