A modern terminal interface for interacting with your etcd database. Navigate keys, view values, filter data, and manage your etcd cluster directly from your terminal.
- Connect to etcd (with optional TLS support)
- Browse keys in etcd with a table view
- View values for selected keys with JSON formatting
- Filter/search keys and values
- Navigate with keyboard shortcuts
- Configuration file support
- Copy values to clipboard
- Pagination support for large datasets
Download the latest release for your platform from the Releases page.
Linux:
# AMD64
wget https://github.com/olamilekan000/etcd-tui/releases/latest/download/etcd-tui_linux_amd64.tar.gz
tar -xzf etcd-tui_linux_amd64.tar.gz
chmod +x etcd-tui
sudo mv etcd-tui /usr/local/bin/
# ARM64
wget https://github.com/olamilekan000/etcd-tui/releases/latest/download/etcd-tui_linux_arm64.tar.gz
tar -xzf etcd-tui_linux_arm64.tar.gz
chmod +x etcd-tui
sudo mv etcd-tui /usr/local/bin/macOS:
# Intel
wget https://github.com/olamilekan000/etcd-tui/releases/latest/download/etcd-tui_darwin_amd64.tar.gz
tar -xzf etcd-tui_darwin_amd64.tar.gz
chmod +x etcd-tui
sudo mv etcd-tui /usr/local/bin/
# Apple Silicon
wget https://github.com/olamilekan000/etcd-tui/releases/latest/download/etcd-tui_darwin_arm64.tar.gz
tar -xzf etcd-tui_darwin_arm64.tar.gz
chmod +x etcd-tui
sudo mv etcd-tui /usr/local/bin/Windows:
Download etcd-tui_windows_amd64.zip or etcd-tui_windows_arm64.zip from the releases page and extract the etcd-tui.exe file.
Prerequisites:
- Go 1.24 or later
- etcd instance (TLS is optional)
Build:
git clone https://github.com/olamilekan000/etcd-tui.git
cd etcd-tui
go mod tidy
go build -o etcd-tuietcd-tui supports configuration via a config file or environment variables. TLS is optional - if TLS credentials are not provided, etcd-tui will connect without TLS.
Create a config file at ~/.etcd-tui/config.json:
Without TLS:
{
"endpoints": "http://localhost:2379"
}With TLS:
{
"endpoints": "https://localhost:2379",
"ca_cert": "/path/to/ca/cert.pem",
"key": "/path/to/client/key.pem",
"cert": "/path/to/client/cert.pem"
}With Username/Password Authentication:
{
"endpoints": "http://localhost:2379",
"username": "myuser",
"password": "mypassword"
}You can also specify a custom config path:
etcd-tui -config /path/to/config.json
# or
etcd-tui -c /path/to/config.jsonAlternatively, set environment variables:
Without TLS:
export ETCDCTL_ENDPOINTS=http://localhost:2379With TLS:
export ETCDCTL_API=3
export ETCDCTL_ENDPOINTS=https://localhost:2379
export ETCDCTL_CACERT=/path/to/ca/cert.pem
export ETCDCTL_KEY=/path/to/client/key.pem
export ETCDCTL_CERT=/path/to/client/cert.pemWith Username/Password Authentication:
export ETCDCTL_ENDPOINTS=http://localhost:2379
export ETCDCTL_USER=myuser
export ETCDCTL_PASSWORD=mypasswordPriority: Config file (if specified) > Default config file (~/.etcd-tui/config.json) > Environment variables
Run the application:
etcd-tuiOr with a custom config:
etcd-tui -config /path/to/config.json↑/k: Move cursor up (or scroll up in value view)↓/j: Move cursor down (or scroll down in value view)←/h: Decrease split pane width→/l: Increase split pane widthg: Jump to top (or top of value view)G: Jump to bottom (or bottom of value view)
Enter: View value for selected key (with JSON formatting)/: Activate filter moder: Refresh keys listTab: Switch between table and value viewc/y: Copy selected value to clipboardEsc: Clear filter or close value viewq/Ctrl+C: Quit
↑/↓: Scroll through long valuesg: Jump to top of valueG: Jump to bottom of valueEsc: Close value view
- Click on a row to select it
- Click and drag the separator to adjust split pane width
- Scroll in value view to navigate long values
go build -o etcd-tuigo test ./...Contributions are welcome! Please feel free to submit a Pull Request.
MIT
