Рубрики
Uncategorized

Удаленно подключиться к бегущей контейнеру докеров

Минут назад, при использовании Jenkins по работе в $, я обнаружил, что смогу удаленно подключиться к бегу … Tagged с Docker, DevOps, Linux, системами.

Минут назад, при использовании Jenkins в $ Работа Я обнаружил, что могу подключиться Удаленно на бегущий контейнер докера.

Это очень удобно! Благодаря этому вы можете глубоко отлаживать, что не так с непрерывной интеграцией. Существует даже кнопка «Пауза» (в Jenkins), которая позволяет вам осмотреть определенный шаг или просто избежать того, чтобы избежать порыва на быстрое бега.

И, честно говоря, первый раз, когда я экспериментировал, я нашел его немного «магией»! 😁

Ниже приведено подробное объяснение о том, как сделать волшебство бывает 😃

Выкрыть TCP соединение на стороне докера

Чтобы иметь возможность удаленно подключиться, вы должны начать Dockerd с -H TCP://0.0.0.0: 2375 Возможность выставить сокет TCP.

Отредактируйте свой сервис Docker Systemd, чтобы добавить гнездо TCP:

dockerd -H fd:// -H tcp://0.0.0.0:2375 --containerd=/run/containerd/containerd.sock

Перезагрузка сервисной конфигурации:

$ systemctl daemon-reload

И перезапустить Докер :

$ systemctl restart docker

Запустите образец контейнера

Я возьму маленькую альпийский и просто запустите «никогда не заканчивать сценарий» внутри:

Написать Dockerfile:

FROM alpine

COPY w.sh w.sh
CMD ["./w.sh"]

И какое-то время/спящий петля В.Ш поддерживать его живым:

#!/bin/sh

while true; do sleep 2 ; echo "alive"; done

Создайте изображение:

$ docker build . -t persist

И, наконец, начните контейнер:

$ docker run -itd persist
f70b46b77105700d3420b88323d07edff9146f435a13c73029efd92197ef9030

Подключиться от клиента

Теперь на вашем ноутбуке (например) теперь вы можете подключиться к контейнеру Docker просто так:

$  docker -H tcp://the-url-or-ip exec -ti f70b46b77105700d3420b88323d07edff9146f435a13c73029efd92197ef9030 /bin/sh

И вы получите свою оболочку:

/ #

Тадааа!

Оригинал: «https://dev.to/thibaultduponchelle/remotely-connect-to-a-running-docker-12id»