Привет читатели👋👋,
Здесь в этой статье я продемонстрирую, как динамически обновлять Docker Container IP в инвентаре с использованием Anbible.
Так что давайте начнем … Пререквизиты: —
Ниже приведена ссылка на одну из моих других статей, откуда вы можете узнать о Anisible и Docker.
Ссылка: https://dev.to/piyushbagani15/Configuration-of-apache-webserver-on-the-top-of-docker-using-ansible-nkf.
Теперь мы знаем, что такое неисправности и докер, так что без какой-либо дальнейшей задержки, давайте начнем с демонстрации …
→ Создать файл инвентаризации с расширением .txt Здесь я создал файл под названием IP.txt, и нам не нужно добавлять IP-адрес в том, что, как он будет динамически обновлен. → Создать Anisible файл конфигурации:
Чтобы создать неизбежный файл, создайте файл с расширением .cfg, здесь у меня есть файл конфигурации с именем Ansible.cfg → Теперь создать аналимный Playbook
Создайте Anisible Playbook с расширением .yml, здесь я создал PlayBook с именем Docker_new.yml, не беспокойтесь о том, что код, который я предоставим ссылку репозитория GitHub, откуда вы можете найти игровые книги.
Я создал Anisible Playbook таким образом, чтобы он настроил Docker, установить Docker, вытащить документ Docker, а затем извлеките IP контейнера и обновлял его в инвентаризации узла контроллера.
Здесь при запуске контейнера Docker он вытягивает изображение, которое я создал и загрузил его в Docker Hub. На этом изображении у меня есть Doceerized SSH- Install SSH и включите SSH-сервис в Docker, это потому, что контейнеры Docker не предварительно сконфигурированы с помощью SSH-сервиса, поэтому из-за этого мы не сможем обновлять IP динамически. Это причина, по которой я создал отдельное изображение. Хитрый Правильно, не волнуйтесь …
Для вашей ссылки только я предоставляю шаги, чтобы сделать выше сложную задачу Dockerizing SSH
Обязательно следуйте этим шагам в создании изображения
yum install net-tools -y yum instate openssh-server -y ssh-keygen-a put/usr/sbin/sshd в/root/.bashrc Файл Установите пароль для root Account, который используется в файле инвентаризации во время SSH
Ссылки ссылок:
Ссылка: https://docs.docker.com/engine/reference/commandline/commit/ Ссылка: https://docs.docker.com/engine/reference/commandline/push/
→ Теперь давайте запустим PlayBook
Чтобы запустить PlayBook, используйте команду Ansible-Playbook Да, PlayBook успешно побежал !!! 🎇🎇.
→ Давайте проверим файл ip.txt …
Ранее мы видели, что IP.txt был пустым, но он динамически обновляется. → Так вот так мы можем настроить контейнер Docker таким образом, чтобы IP контейнера динамически обновляются на инвентаризацию узла контроллера.
Также я создал PlayBook для настройки веб-сервера, и целевой узел будет контейнером, и мы получили его IP в инвентаре. Поэтому мы должны идти …
→ PlayBook Named Webserver-Docker.yml Теперь после запуска этого Playbook мы получили: Hururah🎇🎇, веб-сервер настроен правильно внутри контейнера. Это так Для этой статьи …. Спасибо за чтение…. Продолжайте учиться, держите сущность🎯 🎯
GitHub Link: https://github.com/piyushbagani15/ansable-docker_integration/tree/main/ansable-docker_container-dynamic.
Оригинал: «https://dev.to/piyushbagani15/dynamically-updating-docker-container-ip-in-the-inventory-using-ansible-4n0f»