基本的にここに書かれている通りでした。
本文には「Homebrew版のzshの場合を例とする」みたいなことが書かれていますが、macOSバンドル版のzshでも有効でした。
macOS Mojaveのzshはバージョン5.3みたいです。
% zsh --version zsh 5.3 (x86_64-apple-darwin18.0)
というわけで実行します。
% etc=/Applications/Docker.app/Contents/Resources/etc % ln -s $etc/docker.zsh-completion /usr/share/zsh/site-functions/_docker % ln -s $etc/docker-machine.zsh-completion /usr/share/zsh/site-functions/_docker-machine % ln -s $etc/docker-compose.zsh-completion /usr/share/zsh/site-functions/_docker-compose (一度ターミナルを閉じて開き直す) % docker run [tab][tab] 1e1148e4cc2c -- 7 in centos 1e1148e4cc2c -- latest in centos caf27325b298 -- latest in alpine alpine centos
一旦ターミナルを完全に閉じてから開き直してもきちんとタブ補完できることを確認できたら完成です。