Дисклеймер
Данная инструкция предполагает использование TCP-соединения для удаленного управления Docker. Убедитесь, что настройка безопасна в вашем окружении, так как открытие TCP-порта Docker без дополнительной защиты (например, TLS) может создать риски для безопасности.
Подключиться к удаленной машине
ssh <REMOTE_IP>На удаленной машине
- Установить Docker. Ниже список команд, которые нужно выполнить последовательно:
sudo apt update
sudo apt install -y docker.io
sudo systemctl enable docker
sudo systemctl start docker
sudo usermod -aG docker $USER
newgrp docker- Проверить Docker. Запустить команду:
docker ps- (опционально) Запустить dozzle (или другой инструмент) для доступа к логам.
docker run -d -v /var/run/docker.sock:/var/run/docker.sock -p 8080:8080 amir20/dozzle:latest- Открыть файл
sudo nano /lib/systemd/system/docker.serviceи изменить настройкуExecStart.
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://0.0.0.0:2375- Перезапустить Docker.
sudo systemctl daemon-reload
sudo systemctl restart docker- Проверить состояние службы Docker:
sudo systemctl status docker- Проверить, что Docker порт используется:
sudo ss -tuln | grep 2375На локальной машине
- Проверить доступность удаленного Docker:
docker -H tcp://<REMOTE_IP>:2375 ps- Прописать переменную в нужном месте. Например в
~/.bash_profile.
export DOCKER_HOST="tcp://<REMOTE_IP>:2375"Alias
alias dockerx="docker -H=your-remote-server.org:2375"For ssh
export DOCKER_HOST="ssh://username@your-remote-server.org"