Як перевірити та виправити шлях до сокета Docker, а також куди додати налаштування, щоб воно застосовувалося автоматично.
Стандартний шлях до сокета Docker
Коли Docker Engine встановлений і працює, його сокет зазвичай розташований за адресою:
/var/run/docker.sock
Цей сокет дозволяє клієнту Docker (команді docker
) взаємодіяти з Docker Daemon.
У вашій помилці вказується нестандартний шлях до сокета:
unix:///home/user/.docker/desktop/docker.sock
Цей шлях використовується Docker Desktop на деяких платформах, але якщо ви використовуєте Docker Engine на Debian, стандартним є /var/run/docker.sock
. Тому потрібно вказати правильний шлях до сокета.
Як перевірити, чи доступний сокет /var/run/docker.sock
Виконайте команду:
ls -la /var/run/docker.sock
Ви повинні побачити щось на зразок:
srw-rw---- 1 root docker 0 Nov 7 14:22 /var/run/docker.sock
Якщо цього файлу немає, можливо, Docker Daemon не запущений. Запустіть його:
sudo systemctl start docker
Тимчасово вказати правильний шлях до сокета (перевірка)
Спробуйте змінити шлях до сокета на /var/run/docker.sock
тимчасово, встановивши змінну DOCKER_HOST
:
export DOCKER_HOST=unix:///var/run/docker.sock
Після цього спробуйте виконати команду Docker, наприклад:
docker info
Якщо це допомогло, значить, проблема дійсно в неправильному шляху до сокета.
Як додати змінну DOCKER_HOST
для постійного використання
Щоб при кожному запуску терміналу Docker використовував правильний шлях до сокета, потрібно додати змінну DOCKER_HOST
у ваш файл конфігурації оболонки.
-
Відредагуйте файл конфігурації оболонки:
Відкрийте файл~/.bashrc
(для оболонки Bash) або~/.zshrc
(для Zsh) будь-яким текстовим редактором, наприклад:nano ~/.bashrc
-
Додайте рядок в кінці файлу:
export DOCKER_HOST=unix:///var/run/docker.sock
-
Збережіть файл і закрийте редактор.
-
Оновіть налаштування оболонки командою:
source ~/.bashrc
або перезапустіть термінал, щоб зміни набрали чинності.
Тепер при кожному запуску терміналу буде використовуватися правильний шлях до сокета Docker.