https://github.com/lirantal/dockly
Immersive terminal interface for managing docker containers and services
https://github.com/lirantal/dockly
cli command-line-tool console containers docker hacktoberfest nodejs
Last synced: 6 days ago
JSON representation
Immersive terminal interface for managing docker containers and services
- Host: GitHub
- URL: https://github.com/lirantal/dockly
- Owner: lirantal
- License: mit
- Created: 2016-10-22T21:47:48.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2025-03-27T07:36:26.000Z (19 days ago)
- Last Synced: 2025-04-01T21:14:15.140Z (13 days ago)
- Topics: cli, command-line-tool, console, containers, docker, hacktoberfest, nodejs
- Language: JavaScript
- Homepage: https://lirantal.github.io/dockly/
- Size: 6.23 MB
- Stars: 3,884
- Watchers: 43
- Forks: 159
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
- awesome - lirantal/dockly - Immersive terminal interface for managing docker containers and services (JavaScript)
- my-awesome-list - dockly - g dockly`) : monitor your containers and **Docker** images from your term (Uncategorized / Uncategorized)
- awesome-tuis - dockly
- awesome-cli-apps - dockly - Interactively manage containers. (Development / Docker)
- awesome-cli-apps - dockly - Interactively manage containers. (Development / Docker)
- awesome-opensource-israel - dockly - Docker console UI and Dashboard for quick managing and inspecting of Containers and Images   (Projects by main language / javascript)
- awesome-blessed - dockly
- awesome-docker - dockly - An interactive shell UI for managing Docker containers by [@lirantal](https://github.com/lirantal) (Container Operations / User Interface)
- awesome-list - dockly
- fucking-awesome-cli-apps - dockly - Interactively manage containers. (Development / Docker)
- awesome-docker - dockly - An interactive shell UI for managing Docker containers by [@lirantal](https://github.com/lirantal) (Container Operations / User Interface)
- jimsghstars - lirantal/dockly - Immersive terminal interface for managing docker containers and services (JavaScript)
- awesome-docker - dockly - An interactive shell UI for managing Docker containers by [@lirantal](https://github.com/lirantal) (Container Operations / User Interface)
- awesome-docker - dockly - An interactive shell UI for managing Docker containers by [@lirantal](https://github.com/lirantal) (Container Operations / User Interface)
- awesome-list-docker - dockly
README
![]()
Immersive terminal interface for managing docker containers, services and images[]()
[](https://www.npmjs.org/package/dockly)
[](https://www.npmjs.org/package/dockly)
[](https://www.npmjs.org/package/dockly)
[](./SECURITY.md
)
[](https://snyk.io/advisor/npm-package/dockly)Dockly has been highlighted, featured and chosen as favorite docker container management tool on:
[](https://github.com/veggiemonk/awesome-docker) [](http://devopsweekly.com)
[](https://github.com/k4m4/terminals-are-sexy) [](https://mailchi.mp/programmerweekly/programmer-weekly-issue-94?e=e8c11d0390) [](https://console.dev/tools/)
# Install
Install the API module as a dependency in your project so you can easily use it to query Operations Orchestration REST API```javascript
npm install -g dockly
```# Usage
Just fire up dockly and it will automatically connect to your localhost docker daemon through the unix socket:
```
dockly
```## Command line options:
It's also possible to provide command line options for dockly to customize the docker connection
| Param | Type | Description |
| --- | --- | --- |
| -s or --socketPath | string | Docker socket to connect to |
| -H or --host | string | Remote docker daemon host to connect to |
| -P or --port | string | Remote docker port to connect to |
| -T or --protocol | `http` \| `https` \| `ssh` | Remote docker protocol to connect to |
| --containerFilters | string | String to apply to filter shown containers |
| -h or --help | null | Display help |
| -v or --version | null | Display version information |### `--containerFilters`
This is a string that could be used to filter the shown containers;
its format is in the x-www-form-urlencoded style and the filters you could apply are listed here: [https://docs.docker.com/engine/api/v1.37/#operation/ContainerList](https://docs.docker.com/engine/api/v1.37/#operation/ContainerList)Example: `--containerFilters="name=test&status=running"` to only show *running* container which name match *test*.
# Docker Support
## Run from docker
You can run dockly using docker:
```
docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock lirantal/dockly
```## Build
If you wish to build dockly as a docker image yourself, you can run the following:
```
$ docker build -t dockly .$ docker run -it --rm --name dockly -v /var/run/docker.sock:/var/run/docker.sock dockly
```# FAQ
1. Unsupported Node.js version
If you're getting the following error in your CLI:
```
root@neo:~# dockly
/usr/local/lib/node_modules/dockly/src/screen.js:36
constructor (utils = new Map()) {
^SyntaxError: Unexpected token =
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
```Or this kind of error:
```
Trace: TypeError: Object.values is not a function
at screen.toggleMode (/home/vokiel/.nvm/versions/node/v6.11.1/lib/node_modules/dockly/src/screen.js:149:35)
at Screen.screen.key (/home/vokiel/.nvm/versions/node/v6.11.1/lib/node_modules/dockly/src/screen.js:190:12)
at Screen.EventEmitter._emit
(/home/vokiel/.nvm/versions/node/v6.11.1/lib/node_modules/dockly/node_modules/blessed/lib/events.js:98:20)
```This is most likely because you're using an unsupported Node.js version.
Dockly requires Node.js v7.6 and above2. PuTTY displays garbled text
Follow the steps [in this comment](https://github.com/lirantal/dockly/issues/50#issuecomment-536190949) to enable VT100 support on the settings for the window
3. Icons not working properly
set `LANG` and `LC_ALL` to c.UTF-8 like so
```bash
export LANG=C.UTF-8
export LC_ALL=C.UTF-8
```
for more info please see [this issue](https://github.com/yaronn/blessed-contrib/issues/111)## Alternatives
See [Awesome Docker list](https://github.com/veggiemonk/awesome-docker/blob/master/README.md#terminal) for similar tools to work with Docker.
# In the news
- Admin Magazine article: [Visualizing containers with clarity
](https://www.admin-magazine.com/Articles/Visualizing-containers-with-clarity)
- [A learnk8s tweet](https://twitter.com/learnk8s/status/1075677503782563840)
- [Dockly – Manage Docker Containers From Terminal](https://ostechnix.com/dockly-manage-docker-containers-from-terminal/)
- [Clever cloud CEO, Quentin Adam, tweeting about dockly](https://twitter.com/waxzce/status/1123886351924043777)# Author
Liran Tal

Learn Node.js Secure Coding techniques and best practices from Liran Tal