# oxker

> Rust TUI for viewing and controlling Docker containers, with log viewing, search, filtering, sorting, inspect and exec, configurable via TOML/JSON.

Stars: 2.0k · Language: Rust · License: MIT · Categories: System

- Repository: https://github.com/mrjackwills/oxker
- Page: https://www.trmn.sh/tools/oxker

## Install

- Homebrew: `brew install oxker`
- Cargo: `cargo install oxker`
- Docker: `docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock:ro --pull=always ghcr.io/mrjackwills/oxker`

## Overview

oxker is a terminal user interface for viewing and controlling Docker containers. It is written in Rust using ratatui for the interface and Bollard to talk to the Docker API. It connects to /var/run/docker.sock by default, or to a custom host via --host or the DOCKER_HOST environment variable.

Inside the TUI you move between panels with tab, scroll with arrow keys, j/k or the mouse wheel, and run the selected Docker command with enter. Containers can be sorted by column (keys 1-9, or clicking headings) and filtered (F1 or /). Logs can be searched (#), resized or hidden, and saved to a file with s. You can also inspect a container (i) or exec into it (e, not available on Windows). Command line flags control the update interval (-d), raw or colored logs (-r, -c), timestamp removal (-t), stderr exclusion (--no-stderr), log timezone (--timezone), and the log save directory (--save-dir).

Settings, custom keymaps and color schemes can be persisted in a config.toml, config.json or config.jsonc file. Command line arguments override config values. oxker can also run as a Docker container with the socket mounted read-only, and images are published for linux/amd64, linux/arm64 and linux/arm/v6. The README documents cross-compiling for Raspberry Pi, including the Pi Zero W. It suits developers and sysadmins who manage local or remote Docker hosts from a terminal.

### Installation

```bash
# via Homebrew
brew install oxker
```

```bash
# via Cargo
cargo install oxker
```

```bash
# via Docker
docker run --rm -it -v /var/run/docker.sock:/var/run/docker.sock:ro --pull=always ghcr.io/mrjackwills/oxker
```

![An animated demo of oxker in operation](https://media.trmn.sh/cached/9be7823704132204de5d29ff8461653baefd6b5ec7de6b72aec3fd8045d673c0.webp)

![oxker screenshot](https://media.trmn.sh/cached/dd80168cee39dd25d93f88a403c1e1090ac0ec6d3f43004859c31350637c0bf5.png)

## Alternatives

- [wiremix](https://www.trmn.sh/tools/wiremix.md): TUI audio mixer for PipeWire that controls volumes, routes audio between devices and applications, and configures audio settings. (Rust, 1.1k stars)
- [zenith](https://www.trmn.sh/tools/zenith.md): Terminal-based system monitor with graphical metrics for CPU, memory, network, disk usage, and process management written in Rust (Rust, 3.1k stars)
- [pdu](https://www.trmn.sh/tools/pdu.md): Parallelized disk usage analyzer that renders graphical charts for directory tree analysis (Rust, 741 stars)
- [kbt](https://www.trmn.sh/tools/kbt.md): Terminal-based keyboard testing tool for checking key functionality across multiple layouts (Rust, 391 stars)
- [g1c](https://www.trmn.sh/tools/g1c.md): Terminal UI for monitoring and managing Google Cloud VM instances with real-time updates and instance operations (Rust, 41 stars)

---

Canonical: https://www.trmn.sh/tools/oxker
