Скрипт, който показва името, портовете и IP адреса на Docker контейнерите
Какво е Docker?
Docker е платформа за контейнеризиране, която пакетира и изпълнява вашето приложение и всички негови зависимости заедно под формата на докер контейнер, за да гарантира, че приложението ви работи безпроблемно във всяка среда.
Какво е контейнер?
Docker Container е стандартизирана единица, която може да бъде създадена в движение за внедряване на конкретно приложение или среда. Може да е контейнер на Ubuntu, контейнер CentOs и т.н., за да изпълни изцяло изискването от гледна точка на операционната система. Освен това може да бъде контейнер, ориентиран към приложение, като контейнер CakePHP или контейнер Tomcat-Ubuntu и т.н
Как да си направим скрипт, който да показва името, портовете и IP адреса на Docker контейнерите?
Всъщност, това не е никак сложен процес. За да създадем този скрипт следвайте стъпките:
① Първо трябва да създадем файл с примерно име docker-ports.sh
vi docker-ports.sh
Във файла docker-ports.sh добавяме следното съдържание:
#!/bin/bash
# Get container IDs
containers=$(docker ps -q)
# Loop through container IDs
for container in $containers; do
# Get container name
name=$(docker inspect --format '{{ .Name }}' $container)
# Remove leading slash from container name
name=${name:1}
# Get container IP address
ip=$(docker inspect --format '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $container)
# Get container ports
ports=$(docker port $container)
# Print container name, IP address, and ports
echo "$name IP address: $ip"
echo "$name ports:"
echo "$ports"
echo ""
done
Записваме информацията с натискане на :wq
Дава ме му права за изпълнение чрез:
chmod +x docker-ports.sh
След това го изпълняваме с:
./docker-ports.sh
Обърнете внимание, че трябва да имате инсталиран Docker на машината си.
Този скрипт ще изведе името, IP адреса и портовете на всички работещи Docker контейнери.
Обърнете внимание, че за да се покаже IP адресът на контейнера, трябва да имате създадена мрежа за Docker контейнерите. Ако не сте създали такава мрежа, можете да я създадете с командата docker network create <име_на_мрежата>
.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut