A CLI + TUI for managing Docker objects with the file system. Perform day-to-day tasks and troubleshooting with ease no copy-pasting IDs or running command sprees, just arrows and coffee to get the work done.
- File transfer between host, container, volume, and bind mounts
- Open any file/directory from host, container, volume, or bind mounts with simple arrow navigation, in your desired console-based editor
- Take backups of host, container, volume, bind mounts, and their files with ease
- Platforms: GNU/Linux
- Dependencies: charmbracelet/gum, Docker CLI
transfer.mov
Copy and paste the command below after installing the dependencies(gum, docker cli) (The command requires curl)
sudo curl -fsSL https://raw.githubusercontent.com/hackctl/dstroman/refs/heads/legacy/dstroman -o /usr/local/bin/dstroman && sudo chmod +x /usr/local/bin/dstroman && (sudo groupadd docker 2>/dev/null || true) && (sudo gpasswd --add "$USER" docker 2>/dev/null || true)
- By default, dstroman does not use any console-based text editor; it simply echoes the path that the
open_editor()
function gets. - To configure it with your desired editor, edit the file
~/.config/dstroman/editor
and input the command that accepts a file path as the first argument. - Make sure the editor command is available for the root user as well.
Example:
- If you want to open files in neovim (assuming neovim is installed), the entry in
~/.config/dstroman/editor
would beneovim
. - If you want to open files in vim, the entry would be
vim
.
- You must have access to Docker without requiring a password. You can achieve this by creating a group named
docker
and adding your user to it. - The Docker daemon must be running before use.
- Press Enter to select (if the current highlight is a directory, it will open the directory; if it's a file, it will select the file).
- Use arrow keys to navigate (note: bind mount paths are not navigable because they are not part of the container's writable layer — binds are listed separately for navigation).
- Press Esc whenever you need to abort an action.
- Backups can be found at ~/.config/dstroman/backups/
- Editor config can be found at ~/.config/dstroman/editor
For navigateing objects and their files
dstroman --navigate
For moving copying file inbetween objects
dstroman --transfer
To list backups
dstroman --list-backups
For creating backup
dstroman --create-backup
For removing backup
dstroman --remove-backup