In short, I upgraded to docker for mac via Homebrew to the latest and I noticed that docker-compose ps
or docker compose ps
is not really truncating the COMMAND column in the output anymore. I’ve been playing with the formatting and I can at least tell it to NOT show the COMMAND column in it’s full glory, but I was wondering if there’s some other reason that it’s not formatting the way it used to prior to upgrade?
Here’s some info about my system:
dbaber@atlas:~$ brew info --cask docker
==> docker: 4.23.0,120376 (auto_updates)
https://www.docker.com/products/docker-desktop
/usr/local/Caskroom/docker/4.23.0,120376 (120B)
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/d/docker.rb
==> Names
Docker Desktop
Docker Community Edition
Docker CE
==> Description
App to build and share containerized applications and microservices
==> Artifacts
Docker.app (App)
Docker.app/Contents/Resources/bin/docker-compose -> /usr/local/bin/docker-compose (Binary)
Docker.app/Contents/Resources/bin/docker-credential-desktop -> /usr/local/bin/docker-credential-desktop (Binary)
Docker.app/Contents/Resources/bin/docker-credential-ecr-login -> /usr/local/bin/docker-credential-ecr-login (Binary)
Docker.app/Contents/Resources/bin/docker-credential-osxkeychain -> /usr/local/bin/docker-credential-osxkeychain (Binary)
Docker.app/Contents/Resources/bin/docker-index -> /usr/local/bin/docker-index (Binary)
Docker.app/Contents/Resources/bin/hub-tool -> /usr/local/bin/hub-tool (Binary)
Docker.app/Contents/Resources/etc/docker.bash-completion -> /usr/local/etc/bash_completion.d/docker (Binary)
Docker.app/Contents/Resources/etc/docker.zsh-completion -> /usr/local/share/zsh/site-functions/_docker (Binary)
Docker.app/Contents/Resources/etc/docker.fish-completion -> /usr/local/share/fish/vendor_completions.d/docker.fish (Binary)
Docker.app/Contents/Resources/bin/kubectl -> /usr/local/bin/kubectl.docker (Binary)
Docker.app/Contents/Resources/bin/com.docker.cli -> /usr/local/bin/com.docker.cli (Binary)
Docker.app/Contents/Resources/bin/com.docker.vpnkit -> /usr/local/bin/vpnkit (Binary)
Docker.app/Contents/Resources/bin/docker -> /usr/local/bin/docker (Binary)
==> Analytics
install: 18,827 (30 days), 50,357 (90 days), 118,594 (365 days)
baber@atlas:~$ docker-compose version
Docker Compose version v2.21.0-desktop.1
dbaber@atlas:~$ docker --version
Docker version 24.0.6, build ed223bc
dbaber@atlas:~$ which docker
/Users/dbaber/.docker/bin/docker
dbaber@atlas:~$ ll /Users/dbaber/.docker/bin/docker
lrwxr-xr-x@ 1 dbaber staff 54 Apr 17 14:31 /Users/dbaber/.docker/bin/docker@ -> /Applications/Docker.app/Contents/Resources/bin/docker
dbaber@atlas:~$ which docker-compose
/Users/dbaber/.docker/bin/docker-compose
dbaber@atlas:~$ ll /Users/dbaber/.docker/bin/docker-compose
lrwxr-xr-x 1 dbaber staff 62 Sep 19 13:40 /Users/dbaber/.docker/bin/docker-compose@ -> /Applications/Docker.app/Contents/Resources/bin/docker-compose
Here’s like an example of what I’m seeing (notice how COMMAND is truncated and well docker ps has a --no-trunc option but docker-compose ps or docker compose ps doesn’t):
baber@atlas:~$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f73a88e49701 sldockerdev/nginx "/bin/sh -c 'service…" 23 hours ago Up 23 hours 80/tcp, 0.0.0.0:8080->8080/tcp sldockerdev_nginx
21f724a162cf sldockerdev/slingshot "/bin/bash -l -c 'cd…" 23 hours ago Up 23 hours 0.0.0.0:5000->5000/tcp slingshot
915a0bacb0bf sldockerdev/blackjack-backend "/bin/bash -l -c 'cd…" 23 hours ago Up 23 hours blackjack_backend
98f0bd5cde25 sldockerdev/blackjack-api "bash -l -c 'cd src/…" 23 hours ago Up 23 hours 0.0.0.0:3000->3000/tcp blackjack_api
10a9c9a4104b sldockerdev/postfix "/bin/sh -c /opt/pos…" 23 hours ago Up 23 hours 0.0.0.0:25->25/tcp sldockerdev_postfix
57fe81a63272 sldockerdev/idp "/bin/bash -l -c 'cd…" 23 hours ago Up 23 hours 0.0.0.0:5001->5001/tcp idp
d30f22be42ff rabbitmq:3.6-management "docker-entrypoint.s…" 23 hours ago Up 23 hours 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp sldockerdev_mq
a7ed6f424b6e sldockerdev/postgres "docker-entrypoint.s…" 23 hours ago Up 23 hours 0.0.0.0:5432->5432/tcp sldockerdev_db
23c9b8f7d52d memcached:latest "docker-entrypoint.s…" 23 hours ago Up 23 hours 0.0.0.0:11211->11211/tcp sldockerdev-memcached-1
This is what docker-compose ps gives me now:
dbaber@atlas:~/src/sldockerdev$ [master|…3⚑ 1]
13:22 $ docker-compose -f docker-compose.yml -f docker-compose.override.yml -f docker-compose.slingshot.yml ps -a
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
blackjack_api sldockerdev/blackjack-api "bash -l -c 'cd src/blackjack && /apps/sl-libblackjack/local/bin/starman -Ilib -MBlackjack -MBlackjack::Schema --port 3000 blackjack.psgi'" blackjack-api 23 hours ago Up 23 hours 0.0.0.0:3000->3000/tcp
blackjack_backend sldockerdev/blackjack-backend "/bin/bash -l -c 'cd src/blackjack && cadillac backend'" blackjack-backend 23 hours ago Up 23 hours
idp sldockerdev/idp "/bin/bash -l -c 'cd src/idp && . ~/.idp_env && perl -Ilib -I/apps/idp/local/lib/perl5 scripts/identity-server.pl daemon -l \"https://*:5001\"'" idp 23 hours ago Up 23 hours 0.0.0.0:5001->5001/tcp
sldockerdev-memcached-1 memcached:latest "docker-entrypoint.sh memcached" memcached 23 hours ago Up 23 hours 0.0.0.0:11211->11211/tcp
sldockerdev_db sldockerdev/postgres "docker-entrypoint.sh postgres" db 23 hours ago Up 23 hours 0.0.0.0:5432->5432/tcp
sldockerdev_mq rabbitmq:3.6-management "docker-entrypoint.sh rabbitmq-server" mq 23 hours ago Up 23 hours 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp
sldockerdev_nginx sldockerdev/nginx "/bin/sh -c 'service nginx start'" nginx 23 hours ago Up 23 hours 80/tcp, 0.0.0.0:8080->8080/tcp
sldockerdev_postfix sldockerdev/postfix "/bin/sh -c /opt/postfix.sh" postfix 23 hours ago Up 23 hours 0.0.0.0:25->25/tcp
slingshot sldockerdev/slingshot "/bin/bash -l -c 'cd src/slingshot && . ~/.slingshot_env && perl -Ilib -I/apps/slingshot/local/lib/perl5 scripts/api-server.pl prefork -l \"https://*:5000\"'" slingshot 23 hours ago Up 23 hours 0.0.0.0:5000->5000/tcp
So yeah why this is showing me the ENTIRE command line now is concerning. So yeah I removed this COMMAND column in some custom --format stuff but CREATED doesn’t really look great either:
dbaber@atlas:~/src/sldockerdev$ [master|…3⚑ 1]
13:24 $ docker ps -a --format 'table {{.Names}}\t{{.Image}}\t{{.CreatedAt}}\t{{.Status}}\t{{.Ports}}'
NAMES IMAGE CREATED AT STATUS PORTS
sldockerdev_nginx sldockerdev/nginx 2023-09-19 14:05:48 -0500 CDT Up 23 hours 80/tcp, 0.0.0.0:8080->8080/tcp
slingshot sldockerdev/slingshot 2023-09-19 14:05:48 -0500 CDT Up 23 hours 0.0.0.0:5000->5000/tcp
blackjack_backend sldockerdev/blackjack-backend 2023-09-19 14:05:48 -0500 CDT Up 23 hours
blackjack_api sldockerdev/blackjack-api 2023-09-19 14:05:48 -0500 CDT Up 23 hours 0.0.0.0:3000->3000/tcp
sldockerdev_postfix sldockerdev/postfix 2023-09-19 14:05:48 -0500 CDT Up 23 hours 0.0.0.0:25->25/tcp
idp sldockerdev/idp 2023-09-19 14:05:48 -0500 CDT Up 23 hours 0.0.0.0:5001->5001/tcp
sldockerdev_mq rabbitmq:3.6-management 2023-09-19 14:05:48 -0500 CDT Up 23 hours 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp
sldockerdev_db sldockerdev/postgres 2023-09-19 14:05:48 -0500 CDT Up 23 hours 0.0.0.0:5432->5432/tcp
sldockerdev-memcached-1 memcached:latest 2023-09-19 14:05:48 -0500 CDT Up 23 hours 0.0.0.0:11211->11211/tcp
How do you get that relative date string in the CREATE column? Also what changed with docker compose ps that it doesn’t truncate the COMMAND column anymore?