summaryrefslogtreecommitdiff
path: root/plugins/docker-compose
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/docker-compose')
-rw-r--r--plugins/docker-compose/README.md36
-rw-r--r--plugins/docker-compose/_docker-compose12
-rw-r--r--plugins/docker-compose/docker-compose.plugin.zsh46
3 files changed, 46 insertions, 48 deletions
diff --git a/plugins/docker-compose/README.md b/plugins/docker-compose/README.md
index 1105e03f6..13f3c2cea 100644
--- a/plugins/docker-compose/README.md
+++ b/plugins/docker-compose/README.md
@@ -11,20 +11,22 @@ 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 |
-| dcupd | `docker-compose up -d` | Same as `dcup`, but 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 |
+| 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 |
+| 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 |
diff --git a/plugins/docker-compose/_docker-compose b/plugins/docker-compose/_docker-compose
index 808b068a3..c6b733500 100644
--- a/plugins/docker-compose/_docker-compose
+++ b/plugins/docker-compose/_docker-compose
@@ -121,12 +121,6 @@ __docker-compose_subcommand() {
'--parallel[Build images in parallel.]' \
'*:services:__docker-compose_services_from_build' && ret=0
;;
- (bundle)
- _arguments \
- $opts_help \
- '--push-images[Automatically push images for any services which have a `build` option specified.]' \
- '(--output -o)'{--output,-o}'[Path to write the bundle file to. Defaults to "<project name>.dab".]:file:_files' && ret=0
- ;;
(config)
_arguments \
$opts_help \
@@ -290,7 +284,7 @@ __docker-compose_subcommand() {
(up)
_arguments \
$opts_help \
- '(--abort-on-container-exit)-d[Detached mode: Run containers in the background, print new container names. Incompatible with --abort-on-container-exit.]' \
+ '(--abort-on-container-exit)-d[Detached mode: Run containers in the background, print new container names. Incompatible with --abort-on-container-exit and --attach-dependencies.]' \
$opts_no_color \
$opts_no_deps \
$opts_force_recreate \
@@ -298,6 +292,7 @@ __docker-compose_subcommand() {
$opts_no_build \
"(--no-build)--build[Build images before starting containers.]" \
"(-d)--abort-on-container-exit[Stops all containers if any container was stopped. Incompatible with -d.]" \
+ "(-d)--attach-dependencies[Attach to dependent containers. Incompatible with -d.]" \
'(-t --timeout)'{-t,--timeout}"[Use this timeout in seconds for container shutdown when attached or when containers are already running. (default: 10)]:seconds: " \
'--scale[SERVICE=NUM Scale SERVICE to NUM instances. Overrides the `scale` setting in the Compose file if present.]:service scale SERVICE=NUM: ' \
'--exit-code-from=[Return the exit code of the selected service container. Implies --abort-on-container-exit]:service:__docker-compose_services' \
@@ -341,11 +336,13 @@ _docker-compose() {
'(- :)'{-h,--help}'[Get help]' \
'*'{-f,--file}"[${file_description}]:file:_files -g '*.yml'" \
'(-p --project-name)'{-p,--project-name}'[Specify an alternate project name (default: directory name)]:project name:' \
+ '--env-file[Specify an alternate environment file (default: .env)]:env-file:_files' \
"--compatibility[If set, Compose will attempt to convert keys in v3 files to their non-Swarm equivalent]" \
'(- :)'{-v,--version}'[Print version and exit]' \
'--verbose[Show more output]' \
'--log-level=[Set log level]:level:(DEBUG INFO WARNING ERROR CRITICAL)' \
'--no-ansi[Do not print ANSI control characters]' \
+ '--ansi=[Control when to print ANSI control characters]:when:(never always auto)' \
'(-H --host)'{-H,--host}'[Daemon socket to connect to]:host:' \
'--tls[Use TLS; implied by --tlsverify]' \
'--tlscacert=[Trust certs signed only by this CA]:ca path:' \
@@ -359,6 +356,7 @@ _docker-compose() {
local -a relevant_compose_flags relevant_compose_repeatable_flags relevant_docker_flags compose_options docker_options
relevant_compose_flags=(
+ "--env-file"
"--file" "-f"
"--host" "-H"
"--project-name" "-p"
diff --git a/plugins/docker-compose/docker-compose.plugin.zsh b/plugins/docker-compose/docker-compose.plugin.zsh
index 9ffe1edf6..13985fc82 100644
--- a/plugins/docker-compose/docker-compose.plugin.zsh
+++ b/plugins/docker-compose/docker-compose.plugin.zsh
@@ -1,26 +1,24 @@
-# Authors:
-# https://github.com/tristola
-#
-# Docker-compose related zsh aliases
+# support Compose v2 as docker CLI plugin
+DOCKER_CONTEXT=default command docker compose &>/dev/null \
+ && dccmd='docker compose' \
+ || dccmd='docker-compose'
-# Aliases ###################################################################
+alias dco="$dccmd"
+alias dcb="$dccmd build"
+alias dce="$dccmd exec"
+alias dcps="$dccmd ps"
+alias dcrestart="$dccmd restart"
+alias dcrm="$dccmd rm"
+alias dcr="$dccmd run"
+alias dcstop="$dccmd stop"
+alias dcup="$dccmd up"
+alias dcupb="$dccmd up --build"
+alias dcupd="$dccmd up -d"
+alias dcdn="$dccmd down"
+alias dcl="$dccmd logs"
+alias dclf="$dccmd logs -f"
+alias dcpull="$dccmd pull"
+alias dcstart="$dccmd start"
+alias dck="$dccmd kill"
-# Use dco as alias for docker-compose, since dc on *nix is 'dc - an arbitrary precision calculator'
-# https://www.gnu.org/software/bc/manual/dc-1.05/html_mono/dc.html
-
-alias dco='docker-compose'
-
-alias dcb='docker-compose build'
-alias dce='docker-compose exec'
-alias dcps='docker-compose ps'
-alias dcrestart='docker-compose restart'
-alias dcrm='docker-compose rm'
-alias dcr='docker-compose run'
-alias dcstop='docker-compose stop'
-alias dcup='docker-compose up'
-alias dcupd='docker-compose up -d'
-alias dcdn='docker-compose down'
-alias dcl='docker-compose logs'
-alias dclf='docker-compose logs -f'
-alias dcpull='docker-compose pull'
-alias dcstart='docker-compose start'
+unset dccmd