summaryrefslogtreecommitdiff
path: root/plugins/docker-compose
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/docker-compose')
-rw-r--r--plugins/docker-compose/README.md43
-rw-r--r--plugins/docker-compose/_docker-compose2
-rw-r--r--plugins/docker-compose/docker-compose.plugin.zsh8
3 files changed, 30 insertions, 23 deletions
diff --git a/plugins/docker-compose/README.md b/plugins/docker-compose/README.md
index bbcff2e0c..5a0290462 100644
--- a/plugins/docker-compose/README.md
+++ b/plugins/docker-compose/README.md
@@ -2,6 +2,8 @@
This plugin provides completion for [docker-compose](https://docs.docker.com/compose/) as well as some
aliases for frequent docker-compose commands.
+This plugin chooses automatically between the legacy `docker-compose` command and the modern
+`docker compose` subcommand, preferring `docker-compose` when both are available.
To use it, add docker-compose to the plugins array of your zshrc file:
@@ -11,23 +13,24 @@ plugins=(... docker-compose)
## Aliases
-| Alias | Command | Description |
-|-----------|--------------------------------|----------------------------------------------------------------------------------|
-| dco | `docker-compose` | Docker-compose main command |
-| dcb | `docker-compose build` | Build containers |
-| dce | `docker-compose exec` | Execute command inside a container |
-| dcps | `docker-compose ps` | List containers |
-| dcrestart | `docker-compose restart` | Restart container |
-| dcrm | `docker-compose rm` | Remove container |
-| dcr | `docker-compose run` | Run a command in container |
-| dcstop | `docker-compose stop` | Stop a container |
-| dcup | `docker-compose up` | Build, (re)create, start, and attach to containers for a service |
-| dcupb | `docker-compose up --build` | Same as `dcup`, but build images before starting containers |
-| dcupd | `docker-compose up -d` | Same as `dcup`, but starts as daemon |
-| dcupdb | `docker-compose up -d --build` | Same as `dcup`, but build images before starting containers and starts as daemon |
-| dcdn | `docker-compose down` | Stop and remove containers |
-| dcl | `docker-compose logs` | Show logs of container |
-| dclf | `docker-compose logs -f` | Show logs and follow output |
-| dcpull | `docker-compose pull` | Pull image of a service |
-| dcstart | `docker-compose start` | Start a container |
-| dck | `docker-compose kill` | Kills containers |
+| Alias | Command | Description |
+|-----------|----------------------------------|----------------------------------------------------------------------------------|
+| dco | `docker-compose` | Docker-compose main command |
+| dcb | `docker-compose build` | Build containers |
+| dce | `docker-compose exec` | Execute command inside a container |
+| dcps | `docker-compose ps` | List containers |
+| dcrestart | `docker-compose restart` | Restart container |
+| dcrm | `docker-compose rm` | Remove container |
+| dcr | `docker-compose run` | Run a command in container |
+| dcstop | `docker-compose stop` | Stop a container |
+| dcup | `docker-compose up` | Build, (re)create, start, and attach to containers for a service |
+| dcupb | `docker-compose up --build` | Same as `dcup`, but build images before starting containers |
+| dcupd | `docker-compose up -d` | Same as `dcup`, but starts as daemon |
+| dcupdb | `docker-compose up -d --build` | Same as `dcup`, but build images before starting containers and starts as daemon |
+| dcdn | `docker-compose down` | Stop and remove containers |
+| dcl | `docker-compose logs` | Show logs of container |
+| dclf | `docker-compose logs -f` | Show logs and follow output |
+| dclF | `docker-compose logs -f --tail0` | Just follow recent logs |
+| dcpull | `docker-compose pull` | Pull image of a service |
+| dcstart | `docker-compose start` | Start a container |
+| dck | `docker-compose kill` | Kills containers |
diff --git a/plugins/docker-compose/_docker-compose b/plugins/docker-compose/_docker-compose
index c6b733500..d0ebfe515 100644
--- a/plugins/docker-compose/_docker-compose
+++ b/plugins/docker-compose/_docker-compose
@@ -128,7 +128,7 @@ __docker-compose_subcommand() {
'--resolve-image-digests[Pin image tags to digests.]' \
'--services[Print the service names, one per line.]' \
'--volumes[Print the volume names, one per line.]' \
- '--hash[Print the service config hash, one per line. Set "service1,service2" for a list of specified services.]' \ && ret=0
+ '--hash[Print the service config hash, one per line. Set "service1,service2" for a list of specified services.]' && ret=0
;;
(create)
_arguments \
diff --git a/plugins/docker-compose/docker-compose.plugin.zsh b/plugins/docker-compose/docker-compose.plugin.zsh
index 7a8bf4a03..7863c4f39 100644
--- a/plugins/docker-compose/docker-compose.plugin.zsh
+++ b/plugins/docker-compose/docker-compose.plugin.zsh
@@ -1,5 +1,8 @@
-# support Compose v2 as docker CLI plugin
-(( ${+commands[docker-compose]} )) && dccmd='docker-compose' || dccmd='docker compose'
+# Support Compose v2 as docker CLI plugin
+#
+# This tests that the (old) docker-compose command is in $PATH and that
+# it resolves to an existing executable file if it's a symlink.
+[[ -x "${commands[docker-compose]:A}" ]] && dccmd='docker-compose' || dccmd='docker compose'
alias dco="$dccmd"
alias dcb="$dccmd build"
@@ -16,6 +19,7 @@ alias dcupdb="$dccmd up -d --build"
alias dcdn="$dccmd down"
alias dcl="$dccmd logs"
alias dclf="$dccmd logs -f"
+alias dclF="$dccmd logs -f --tail 0"
alias dcpull="$dccmd pull"
alias dcstart="$dccmd start"
alias dck="$dccmd kill"