Docker-Containers.nvim
A Neovim plugin for managing Docker containers, images, volumes, and networks directly from your editor.
NeovimLuaDocker
A Neovim plugin for managing Docker containers, images, volumes, and networks directly from your editor. Built asynchronously to prevent UI blocking.
Features
- Container Management: Start, stop, and restart Docker containers.
- Multi-Resource View: Browse containers, images, volumes, and networks.
- Docker Compose Support: Automatically groups containers by compose project.
- Async Operations: Non-blocking container operations.
Requirements
- Neovim
0.12or higher - Docker installed and running
Installation
Using lazy.nvim
{
"HyperAfnan/docker-containers.nvim",
dependencies = {
"akinsho/toggleterm.nvim"
},
config = function()
require("docker-containers").setup()
end
}
Using packer.nvim
use {
'HyperAfnan/docker-containers.nvim',
requires = { 'akinsho/toggleterm.nvim' },
config = function()
require("docker-containers").setup()
end
}
Using vim-plug
Plug 'HyperAfnan/docker-containers.nvim'
Plug 'akinsho/toggleterm.nvim'
Then in your init.lua:
require("docker-containers").setup()
Usage
Run the following command in Neovim:
:DockerContainers
Configuration
You can customize the plugin by passing options to the setup function:
require("docker-containers").setup({
position = "right", -- position of the window: left | right
term = {
direction = "horizontal" -- terminal layout: tabs | horizontal | vertical | float
},
maps = {
collapse = "<space>",
restart = "r",
down = "d",
start = "s",
close = "q",
help = "?",
},
icons = {
container_running = "",
container_stopped = "",
project = "",
expanded = "",
collapsed = "",
}
})
Acknowledgments
- Terminal integration via toggleterm.nvim.