Ошибки Docker

Содержание
Введение
Bind for 0.0.0.0:80 failed: port is already allocated
the input device is not a TTY
ls: cannot access
Got permission denied while trying to connect to the Docker daemon socket
Статьи про Docker

Введение

В этой статье вы можете найти ошибки с которыми я встретился при работе с Docker

Инструкции по работе с Docker можете прочитать здесь и здесь

Bind for 0.0.0.0:80 failed: port is already allocated.

docker: Error response from daemon: driver failed programming external connectivity on endpoint web (8b4ccb280aa958668c714013462f1a84334118d41bbd5505e7bfdc23331c2ce5): Bind for 0.0.0.0:80 failed: port is already allocated.

Скорее всего у Вас уже запущен контейнер который слушает порт 80

Выполните

docker ps -a

Посмотрите какой контейнер из тех что Up использует порт 80 - это видно в столбце PORTS

Остановите его командой

docker stop имя_контейнера

Обратите внимание на то, что имя контейнера может не совпадать с именем образа. Вам нужен столбец NAMES

the input device is not a TTY

the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty'

Скорее всего вы пытаетесь запустить, например, ubuntu в docker под Windows . Например

docker exec -it myubuntu bash

Попробуйте последовать совету и выполнить

winpty docker exec -it myubuntu bash

ls: cannot access

ls: cannot access 'C:/Program Files/Git/': No such file or directory

Скорее всего у вас запущен, например, ubuntu в docker под Windows и вы пытаетесь выполнить какую-то команду внутри контейнера используя /

docker exec myubuntu ls /

или

docker exec myubuntu cat /data.txt

Попробуйте выполнить без /

docker exec myubuntu ls

или

docker exec myubuntu cat data.txt

Got permission denied

docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.40/containers/create: dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'.

Возможно, пользователь который запускает docker run не состоит в группе docker.

Проверить есть ли группа docker можно командой

groups

andrei adm cdrom sudo dip plugdev lpadmin lxd sambashare docker

Если группа docker уже есть - переходите к следующему шагу. Если её нет - создайте командой

sudo groupadd docker

Нужно добавить пользователя в группу docker командой

sudo usermod -aG docker username

Осталось только перелогиниться и всё должно заработать

Похожие статьи
Docker
Установка в Windows
Установка в Linux
Начало работы
run: Опции запуска контейнера
Dockerfile
Остановить/удалить все контейнеры
Ubuntu в контейнере на Windows 10
exec: выполнить команду в контейнере
Установка docker compose в Linux
Создать контейнер с доступом по SSH
Видеоуроки
Ошибки
Make
Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящуюю по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: