A TUI dashboard for Traefik
Project description
tt-tui-for-traefik
tt is a console TUI dashboard for
Traefik.
This program is a third party companion tool for Traefik. Traefik is a trademark of Traefik Labs.
Install
- Install uv
uv tool install tt-tui-for-traefik
- Make sure your PATH environment variable (e.g., in
~/.bashrc) includes the directory${HOME}/.local/bin.
Usage
The tt tool is installed at ${HOME}/.local/bin/tt.
usage: tt [-h] [--link LINK] [--url URL] [--username USERNAME] [--password PASSWORD]
[--ssh-host SSH_HOST] [--ssh-remote-host SSH_REMOTE_HOST] [--ssh-remote-port SSH_REMOTE_PORT]
`tt` is a console TUI dashboard for Traefik
options:
-h, --help show this help message and exit
--link, -l LINK Deep link to a resource (e.g., entrypoint#websecure,
middleware#mtls@file, router:tcp#myrouter)
--url, -u URL Direct connection URL (disables Settings tab)
--username USERNAME HTTP basic auth username (requires --url)
--password PASSWORD HTTP basic auth password (requires --url)
--ssh-host SSH_HOST SSH host from ~/.ssh/config for tunnel (requires --url)
--ssh-remote-host SSH_REMOTE_HOST Remote host for tunnel (default: localhost)
--ssh-remote-port SSH_REMOTE_PORT Remote port for tunnel (default: 8080)
Keyboard navigation
- Press
Tabto cycle through the panels that can be focussed. - Use the arrow keys to select elements in the focussed pane.
- Press
Enterto descend the focus into the selected tab. - Press
ESCto ascend the focus back to the tab bar. - Press
qto quit. - Press
/to search. - Press
Ctrl+Pto bring up the Pallete.- Select the
Keyscommand to show a help screen with all of the contextual keybindings. - Select the
Themecommand to change the inteface theme.
- Select the
Mouse navigation
In modern terminals, mouse / pointer support is enabled by default. You can click on tabs and buttons in the terminal window to navigate the app.
Configure Traefik API
The connection information must be set one of two ways:
- On the
Settingstab, enter the URL with port, username, and password. - Via the
--url,--usernameand--passwordcommand line options (this disables theSettingstab for this session).
All settings are saved to the file
${HOME}/.local/share/tt-tui-for-traefik/config.toml. WARNING: This
config file includes Traefik API credentials!
SSH Tunnel Support
tt can connect to remote Traefik instances via SSH tunnels. This is
useful when your Traefik API is only accessible from a server and not
exposed publicly.
Prerequisites
Configure your SSH connection in ~/.ssh/config. For example:
Host myserver
HostName server.example.com
User admin
IdentityFile ~/.ssh/id_ed25519
Port 22
The SSH tunnel feature reads settings from your SSH config, including
HostName, User, Port, and IdentityFile.
Command Line Usage
Use the --ssh-host argument along with --url to connect via an SSH
tunnel:
tt --url http://localhost:8080 --ssh-host myserver
The --url should specify the address of Traefik as seen from the
remote server. The SSH tunnel will forward this connection through
myserver.
Additional SSH options:
| Option | Default | Description |
|---|---|---|
--ssh-host |
(required) | SSH host name from ~/.ssh/config |
--ssh-remote-host |
localhost |
Traefik host as seen from the SSH server |
--ssh-remote-port |
8080 |
Traefik port as seen from the SSH server |
Example connecting to Traefik on a non-default port:
tt --url http://localhost:9090 --ssh-host myserver \
--ssh-remote-host localhost --ssh-remote-port 9090
Manual Setup via Settings Tab
You can also configure SSH tunnels through the Settings tab UI:
- Create or select a profile on the Settings tab
- Enter the Traefik URL (as seen from the remote server, e.g.,
http://localhost:8080) - Check the Enable SSH tunnel checkbox
- Fill in the SSH settings:
- SSH Host: The host name from your
~/.ssh/config(e.g.,myserver) - Remote Host: The hostname where Traefik is running, as seen
from the SSH server (default:
localhost) - Remote Port: The port Traefik is listening on (default:
8080) - Local Port: Leave empty for automatic port selection, or specify a fixed local port
- SSH Host: The host name from your
- The tunnel status will show "Tunnel: Open (port XXXXX)" when connected successfully
The SSH tunnel settings are saved with the profile and will automatically reconnect when you select that profile.
Development
Put this in ~/.bashrc to create a tt alias for development purposes:
alias tt="uv --project ${HOME}/git/vendor/enigmacurry/tt-tui-for-traefik run tt
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tt_tui_for_traefik-0.1.4.tar.gz.
File metadata
- Download URL: tt_tui_for_traefik-0.1.4.tar.gz
- Upload date:
- Size: 139.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84572dc230585500418d60e5897d2184c04320988de3dcf90744b84665c47f32
|
|
| MD5 |
942e4c2d98ed2db84b7347f7df494a12
|
|
| BLAKE2b-256 |
5a2c25aaeca6a51e4cae9b845ffb8ec70e4697ceffa4c3dcdc00f2b6b9caef49
|
Provenance
The following attestation bundles were made for tt_tui_for_traefik-0.1.4.tar.gz:
Publisher:
release.yml on EnigmaCurry/tt-tui-for-traefik
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tt_tui_for_traefik-0.1.4.tar.gz -
Subject digest:
84572dc230585500418d60e5897d2184c04320988de3dcf90744b84665c47f32 - Sigstore transparency entry: 1107160172
- Sigstore integration time:
-
Permalink:
EnigmaCurry/tt-tui-for-traefik@1cd26f782084cc3894cfce6f06ea6a4e95928db4 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/EnigmaCurry
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@1cd26f782084cc3894cfce6f06ea6a4e95928db4 -
Trigger Event:
push
-
Statement type:
File details
Details for the file tt_tui_for_traefik-0.1.4-py3-none-any.whl.
File metadata
- Download URL: tt_tui_for_traefik-0.1.4-py3-none-any.whl
- Upload date:
- Size: 48.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
842cf47619e8452cb0958e1564493c4e6f574d154ee51ad8b83a96ba62266751
|
|
| MD5 |
2afb54393e6f50083f252ea65eabab46
|
|
| BLAKE2b-256 |
79d4fda121d2dc66f5be03c989f1f2bb285edc84983b16cdbc2670d86b99ad3f
|
Provenance
The following attestation bundles were made for tt_tui_for_traefik-0.1.4-py3-none-any.whl:
Publisher:
release.yml on EnigmaCurry/tt-tui-for-traefik
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
tt_tui_for_traefik-0.1.4-py3-none-any.whl -
Subject digest:
842cf47619e8452cb0958e1564493c4e6f574d154ee51ad8b83a96ba62266751 - Sigstore transparency entry: 1107160173
- Sigstore integration time:
-
Permalink:
EnigmaCurry/tt-tui-for-traefik@1cd26f782084cc3894cfce6f06ea6a4e95928db4 -
Branch / Tag:
refs/tags/v0.1.4 - Owner: https://github.com/EnigmaCurry
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@1cd26f782084cc3894cfce6f06ea6a4e95928db4 -
Trigger Event:
push
-
Statement type: