#+TITLE: Docker layer #+TAGS: layer|tool [[file:img/docker.png]] * Table of Contents :TOC_5_gh:noexport: - [[#description][Description]] - [[#features][Features:]] - [[#install][Install]] - [[#usage][Usage]] - [[#tramp-access-to-docker-containers][TRAMP access to docker containers]] - [[#key-bindings][Key bindings]] * Description This layer integrates basic container management into Spacemacs. ** Features: - Syntax highlighting for =Docker= files - =Docker= build integration - =TRAMP= access to running Docker containers - =Docker= container and image management via [[https://github.com/Silex/docker.el][docker.el]] - =docker-compose= integration via [[https://github.com/Silex/docker.el][docker.el]] - Syntax checking via [[https://github.com/hadolint/hadolint][hadolint]] * Install To use this configuration layer, add it to your =~/.spacemacs=. You will need to add =docker= to the existing =dotspacemacs-configuration-layers= list in this file. You will also need the native package [[https://www.docker.com/][Docker]] for the actual container management. For syntax checking the external library =hadolint= is also necessary. * Usage ** TRAMP access to docker containers This relies on the [[https://github.com/emacs-pe/docker-tramp.el][docker-tramp]] package which uses =docker exec= available in docker versions > 1.3. =docker-tramp= adds a new prefix =/docker:= that you can use with ~SPC f f~, this prefix allows to access your docker containers and also provides auto-completion of the running containers. * Key bindings | Key binding | Description | |-------------+---------------------------------------------| | ~SPC m c b~ | build current buffer | | ~SPC m c B~ | build current buffer without cache | | ~SPC a D c~ | list docker containers | | ~SPC a D C~ | docker-compose commands for current project | | ~SPC a D d~ | delete image | | ~SPC a D e~ | unpause container | | ~SPC a D F~ | pull image | | ~SPC a D i~ | list docker images | | ~SPC a D k~ | delete container | | ~SPC a D o~ | stop container | | ~SPC a D p~ | pause container | | ~SPC a D P~ | push image | | ~SPC a D r~ | restart container | | ~SPC a D s~ | start container |