docker-ips misc

This commit is contained in:
2026-04-04 19:51:34 +08:00
parent 110df8e08b
commit d64708126b

View File

@@ -1,27 +1,24 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -eo pipefail set -eo pipefail
# TODO not ready yet if [[ "$1" == "-h" || "$1" == "--help" ]]; then
exit cat <<EOF
Usage: $(basename "$0") [-h] [name]
if [ "$1" ]; then Display IP addresses of Docker containers.
if [ "$1" = "-a" ]; then
docker ps -aq \ Options:
| xargs -n 1 docker inspect --format '{{.Name}}{{range .NetworkSettings.Networks}} {{.IPAddress}}{{end}}' \ -h, --help Show this help message
| sed -e 's#^/##' \
| column -t Arguments:
elif [ "$1" = "-c" ]; then name Container name to show specific IP
docker compose ps -q \
| xargs -n 1 docker inspect --format '{{.Name}}{{range .NetworkSettings.Networks}} {{.IPAddress}}{{end}}' \ EOF
| sed -e 's#^/##' \ exit 0
| column -t fi
else
docker inspect --format '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' "$1" if [[ -n "$1" ]]; then
docker port "$1" docker ps -a --format "{{.ID}} {{.Names}} {{.Ports}}" --filter name="$1"
fi else
else docker ps -a --format "{{.ID}} {{.Names}} {{.Ports}}"
docker ps -q \
| xargs -n 1 docker inspect --format '{{.Name}}{{range .NetworkSettings.Networks}} {{.IPAddress}}{{end}}' \
| sed -e 's#^/##' \
| column -t
fi fi