Compose: «Драйвер не смог запрограммировать внешнее подключение на конечной точке» (1.7.0-rc1)

Созданный на 6 апр. 2016  ·  278Комментарии  ·  Источник: docker/compose

Я почти уверен, что это работало над docker-compose 1.7.0-rc1 до того, как я установил последнюю бета-версию Docker для Mac, которая была обновлена ​​до docker 1.11.0-rc3. Я пытаюсь запустить службу socat на порту 172.17.0.1:8123, чтобы она была доступна для сборок докеров. Мой настоящий yml использует переменную среды для IP-адреса, но это происходит даже при жестком кодировании.

ERROR: for socat_httpcache  driver failed programming external connectivity on endpoint test_socat_httpcache_1 (5d973ed559d63a5561b715248f797a336915a44960b5e32e622ac8349b16e5d2): Error starting userland proxy: failed to bind port: Unix.Unix_error(Unix.EADDRNOTAVAIL, "bind", "")
version: '2'
services:
  httpcache:
    restart: always
    image: clue/polipo
    command: proxyAddress=0.0.0.0 allowedClients=0.0.0.0/0 disableIndexing=false disableServersList=false
    mem_limit: 500m
    memswap_limit: 500m
    volumes:
      - /var/cache/polipo

  socat_httpcache:
    restart: always
    hostname: POLIPO1
    image: bobrik/socat
    mem_limit: 50m
    command: TCP-LISTEN:8123,fork,reuseaddr TCP:httpcache:8123
    depends_on:
      - httpcache
    ports:
      - "172.17.0.1:8123:8123"

verbose.txt

arenetworking

Самый полезный комментарий

Пожалуйста, прекратите отправлять +1, так как он спамит все почтовые ящики подписчиков. Либо используйте смайлики (смайлик справа от каждого комментария), либо, по крайней мере, укажите свою полную настройку, номера версий и так далее. Спасибо

Все 278 Комментарий

@jamshid
Можете ли вы опубликовать o / p sudo netstat -nlp | grep 8123 . Благодарю.

Мой Mac говорит, что -p требует аргумента, поэтому я думаю, что это то, что вам нужно:

$ sudo netstat -nl -p tcp  | grep 8123
(nothing)
$ sudo netstat -nl -p tcp  | head    # to confirm mac output is what you expect
Active Internet connections
Proto Recv-Q Send-Q  Local Address          Foreign Address        (state)    
tcp4       0      0  192.168.2.4.52918      216.58.194.34.80       ESTABLISHED
tcp4       0      0  192.168.2.4.52917      23.199.236.147.80      ESTABLISHED
tcp4       0      0  192.168.2.4.52916      192.229.163.25.443     ESTABLISHED
tcp4       0      0  192.168.2.4.52915      192.229.163.175.80     ESTABLISHED
...
$ docker ps -a | grep 8123
7baf5b2ec0eb        clue/polipo               "polipo proxyAddress="   26 minutes ago      Up 12 minutes                  8123/tcp            test_httpcache_1
3fea15e3d5b4        clue/polipo               "polipo proxyAddress="   33 minutes ago      Up 19 minutes                  8123/tcp            buildenv_httpcache_1

то же самое происходит и со мной.

У меня такая же проблема при перезапуске с помощью docker-compose up. В моем случае это прокси-служба nginx, которая не запускается. Должен быть связан с бета-версией Docker для Mac. Это началось после того, как я установил бета-версию, и не произошло после того, как я снова переключился на Virtualbox.

docker-compose версия 1.7.0, сборка 0d7bf73
Докер версии 1.11.0, сборка 4dc5990

Я сталкиваюсь с той же ошибкой, когда пытаюсь запустить свой стек с помощью docker-compose. Все контейнеры запускаются правильно, кроме одного (консула). Я получаю эту ошибку

ERROR: for consul driver failed programming external connectivity on endpoint devas_consul_1 (6ceba32c51cb70b354f 2f4b68d173ca97a65d6a0bfd308d3137e2a7069abd1b6): Error starting userland proxy: Failed to bind: EADDRNOTAVAIL

Я уверен, что это как-то связано с моей бета-версией докера для Mac.

docker-compose -v docker-compose version 1.7.0, build 0d7bf73

Я использую последнюю бета-версию докеров для Mac

`
версия докера
Клиент:
Версия: 1.11.1
Версия API: 1.23
Версия Go: go1.5.4
Git commit: 5604cbe
Построен: 27 апр, среда, 00:34:20, 2016
ОС / Arch: darwin / amd64

Сервер:
Версия: 1.11.1
Версия API: 1.23
Версия Go: go1.5.4
Git commit: 8b63c77
Построен: Пт 29 Апр, 14:13:26 2016
ОС / Arch: Linux / amd64
`

После сообщения выше я получаю Error starting userland proxy: Failed to bind: EADDRINUSE.
Не понимаете, где конфликт там, где его раньше не было

Как «освободить» порт, который используется, чтобы compose снова смог открыть контейнер? В первый раз это случилось, я подождал минуту или около того, и со второй попытки все заработало. Второй раз прошло около часа. Docker создает kill, down, rm --all и т. Д., И что-то еще удерживает его.

FYI, отслеживается в бета-версии @ https://forums.docker.com/t/port-mappings-are-not-released/10565/11

Я выяснил, в чем проблема, контейнер (консул), вызывающий проблему, имеет этот порт привязки 172.17.0.1:53:8600/udp . Я заменил его на 53:8600/udp и теперь он работает. Пока не понял, почему не работает первая привязка. Кстати, как я могу узнать IP-адрес моста?

Здравствуйте, у меня была такая же проблема с Docker версии 1.11.1 на Mac OSX.
ERROR: for nginx driver failed programming external connectivity on endpoint managercentralapp_nginx_1 (e11d19ee8f486a2e12c9c87802dca7ea5f541f026645f69e338e94732ac1eb56): Error starting userland proxy: Failed to bind: EADDRINUSE

Я тоже получаю это после обновления до Docker 1.12-rc2, не уверен, что это подходящее место для публикации.

Client:
 Version:      1.12.0-rc2
 API version:  1.24
 Go version:   go1.6.2
 Git commit:   906eacd
 Built:        Fri Jun 17 20:35:33 2016
 OS/Arch:      darwin/amd64
 Experimental: true

Server:
 Version:      1.12.0-rc2
 API version:  1.24
 Go version:   go1.6.2
 Git commit:   906eacd-unsupported
 Built:        Fri Jun 17 21:12:28 2016
 OS/Arch:      linux/amd64
 Experimental: true

Полная ошибка:

Error response from daemon: driver failed programming external connectivity on endpoint xxx_xxx_1 (xxx): Bind for 0.0.0.0:2224 failed: port is already allocated

netstat:

tcp6       0      0 :::2224                 :::*                    LISTEN      9083/docker-proxy

Я вижу это время от времени. Повторная попытка выполнения команды через минуту обычно «решает» проблему.
Это после вчерашнего перехода на Docker для Mac.

$ docker version
Client:
 Version:      1.12.0-rc2
 API version:  1.24
 Go version:   go1.6.2
 Git commit:   906eacd
 Built:        Fri Jun 17 20:35:33 2016
 OS/Arch:      darwin/amd64
 Experimental: true

Server:
 Version:      1.12.0-rc2
 API version:  1.24
 Go version:   go1.6.2
 Git commit:   a7119de
 Built:        Fri Jun 17 22:09:20 2016
 OS/Arch:      linux/amd64
 Experimental: true

Я тоже получаю ту же ошибку, что и вы. Я полагал, что это произошло потому, что nginx привязывает его к портам, которые уже были заняты, но сейчас я так не думаю. Кто-нибудь нашел для этого решения? :)

+1 Та же ошибка на Mac

У меня это происходило после перехода на Docker for Mac , но после остановки и удаления всех контейнеров после перемещения, перезапуска докера, воссоздания контейнера и т. Д. Это было исправлено.

У меня было это снова сегодня после обновления Docker for Mac , но повторение вышеуказанного сценария исправлено. Я предполагаю, что порт (и «другие» вещи), который я назначаю конкретным контейнерам, не будет выпущен, пока не будет полностью очищен.

например:

ERROR: for nginx driver failed programming external connectivity on endpoint dev_nginx (4c340c55f7402c7b265803ea64541ebdf8613f4b43dfa816001d27bdc4f513b3): Error iptables FORWARD: Another app is currently holding the xtables lock; waiting (1s) for it to exit... ERROR: Encountered errors while bringing up the project.

+1 такая же проблема на Mac

@TuningGuide MacBook Pro (15 дюймов, конец 2011 г.), Intel Core i7 2,2 ГГц, 8 ГБ DDR3 1333 МГц
Запуск Node 4.4.7 расширен для поддержки Ember CLI. Настройка ниже:

FROM node:4.4.7

# expose ember-cli ports
EXPOSE 4200 35729 49152

# install ember-cli dependencies
RUN npm install -q -g ember-cli
RUN npm install -q -g bower
RUN npm install -q -g phantomjs-prebuilt

# install watchman
# http://ember-cli.com/user-guide/#watchman
RUN \
  git clone https://github.com/facebook/watchman.git &&\
  cd watchman &&\
  git checkout v3.5.0 &&\
  ./autogen.sh &&\
  ./configure &&\
  make &&\
  make install

Выполнить с установленным томом файлов ember-cli, используя команду ember serve.

+1 такая же проблема на Mac с докером для Mac

Пожалуйста, прекратите отправлять +1, так как он спамит все почтовые ящики подписчиков. Либо используйте смайлики (смайлик справа от каждого комментария), либо, по крайней мере, укажите свою полную настройку, номера версий и так далее. Спасибо

➜  ~ docker info
Containers: 2
 Running: 0
 Paused: 0
 Stopped: 2
Images: 2
Server Version: 1.12.0-rc3
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 21
 Dirperm1 Supported: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: null host bridge overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options: seccomp
Kernel Version: 4.4.14-moby
Operating System: Alpine Linux v3.4
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 1.954 GiB
Name: moby
ID: GZAT:26TX:PYCM:KKNA:JSWY:AMEL:RQYI:O23B:QGSQ:WBVB:3Q7E:XDPJ
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): true
 File Descriptors: 18
 Goroutines: 30
 System Time: 2016-07-08T17:41:26.03558348Z
 EventsListeners: 1
No Proxy: *.local, 169.254/16
Registry: https://index.docker.io/v1/
Experimental: true
Insecure Registries:
 127.0.0.0/8
➜  ~ cat docker-compose-local.yml
version: '2'
services:
  cache:
    image: redis
    command: redis-server --appendonly yes
    ports:
      - "6379:6379"
  db:
    image: postgres:9.4
    ports:
      - "5432:5432"
    volumes:
      - ./tmp/dump.gz:/tmp/dump.gz
      - ./tmp/dump.sh:/docker-entrypoint-initdb.d/dump.sh
    environment:
      POSTGRES_DB: dbname
      POSTGRES_USER: dbuser
      POSTGRES_PASSWORD: dbpass

Получены следующие ошибки:

ERROR: for cache  driver failed programming external connectivity on endpoint carsaver_cache_1 (253054ef6864bdcb5377bd1690173fa352021d505dc05c3aafecf66b02c0b73d): Error starting userland proxy: write /port/tcp:0.0.0.0:6379:tcp:172.18.0.2:6379/ctl: errno 526

ERROR: for db  driver failed programming external connectivity on endpoint carsaver_db_1 (8a5990bd06a50d87c7db96de84367bb01b71c971d5a4b9e578fea7d75d893d59): Error starting userland proxy: write /port/tcp:0.0.0.0:5432:tcp:172.18.0.3:5432/ctl: errno 526
ERROR: Encountered errors while bringing up the project.

Нашел решение для людей с такой же ошибкой, как я показал выше.
Раньше я использовал Docker Toolbox, но не удалял Virtualbox. Он использовал мои порты, поэтому я не могу запустить. После полного удаления VirtualBox docker-compose отлично

@aanand @dnephin, пожалуйста, добавьте к Getting Started предупреждение, как описано выше.

@miraage рад слышать, что вы решили свою проблему.
У меня не было вашего тома data + dump.sh, но я быстро написал без проблем:

Creating driverfailed_cache_1
Creating driverfailed_db_1
Attaching to driverfailed_cache_1, driverfailed_db_1

@jamshid Почему вы указываете IP для socat (не знаком с ним)? Как ты им пользуешься?
Выполняя docker-compose up без IP, у меня нет никаких проблем:

Creating socat_httpcache_1
Creating socat_socat_httpcache_1
Attaching to socat_httpcache_1, socat_socat_httpcache_1
docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
f2e3b3767982        bobrik/socat        "socat TCP-LISTEN:812"   2 seconds ago       Up 1 seconds        0.0.0.0:8123->8123/tcp   socat_socat_httpcache_1
43dbd35629e0        clue/polipo         "polipo proxyAddress="   3 seconds ago       Up 2 seconds        8123/tcp                 socat_httpcache_1

Если ваша цель состоит в том, чтобы ваш http_cache взаимодействовал с контейнером socat, почему бы не поместить их в ту же сеть и покончить с этим?

version: '2'
services:
  httpcache:
    restart: always
    image: clue/polipo
    command: proxyAddress=0.0.0.0 allowedClients=0.0.0.0/0 disableIndexing=false disableServersList=false
    mem_limit: 500m
    memswap_limit: 500m
    volumes:
      - /var/cache/polipo
    networks:
      - socatnet

  socat_httpcache:
    restart: always
    hostname: POLIPO1
    image: bobrik/socat
    mem_limit: 50m
    command: TCP-LISTEN:8123,fork,reuseaddr TCP:httpcache:8123
    depends_on:
      - httpcache
    networks:
      - socatnet
networks:
  socatnet:

Ну, я использую движок докеров 1.11.2 в centos7 в потоке непрерывной сборки / интеграции для автоматизации тестов, и, насколько я могу судить, в конечном итоге эта ошибка появляется, даже если контейнер не запущен (при повторном развертывании определенной версии всего стека сервисов). Также это связано с тем фактом, что иногда движок докеров выдает ошибку при попытке очистки после удаления запущенных контейнеров, и некоторые правила iptables могут по какой-то причине сохраняться, выделяя сетевые порты, возможно, связанные с https://github.com/ docker / docker / issues / 23371 # issuecomment -229982105 - но я все еще не уверен в этом.

У меня была такая же проблема с Docker для Mac с контейнером postgresql. Итак, для меня это было вызвано тем, что postgres запущен на том же порту в хост-системе, что и порт, указанный в моем файле конфигурации compose. Довольно очевидная вещь, но, думаю, кому-то может быть полезно.
Спасибо за крутой инструмент. 👍

У меня была аналогичная проблема с Docker для Mac с контейнером nginx, мой порт 80 использовался apache (native). Я использовал telnet и netstat, чтобы увидеть работающую службу.

Для меня это был кальмар, я остановил кальмара и больше этого не видел. Поэтому я думаю, что это может быть связано с тем, что занимает порт, и если мы заставим докер сопоставить этот порт.

То же, что и @marcosalberto и другие. Сообщение, к которому я пытался примонтировать postgres уже использовалось. Я просто поменял порт, и все заработало.

в OSX встроенный веб-сервер Apache может работать на портах 80/443. Проверить:
ps -ef | grep httpd

Чтобы выключить его:
sudo apachectl stop

Да, у меня это сработало. У меня OS X без активированного apache, но через несколько дней я использовал этот сайт: https://coolestguidesontheplanet.com/upgrade-php-on-osx/ для обновления PHP.

После этого скрипта

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6

рекомендуется для обновления php, был активирован apache, и я был удивлен своими контейнерами.

Когда мы хотим «обновить php», мы не хотим «активировать apache», но веб-сайт, указанный выше, занимает первую позицию в Google :(

Удачного стыковки!

Иногда docker-compose не может запустить желаемый контейнер и оставляет порт занятым прослушивающим процессом ... поэтому попробуйте перечислить все (прослушивающие) порты, используя

lsof -nP +c 15 | grep LISTEN

# outputs
Dropbox             384  IPv4 0x82c      TCP 127.0.0.1:17600 (LISTEN)
com.docker.slirp   6218  IPv4 0x82c      TCP *:5432 (LISTEN) <<<MOSTLY THE PROBLEM
Python             6268  IPv4 0x82c      TCP 127.0.0.1:51617 (LISTEN)

# then kill the com.docker.slirp process id if it's the one causing the problem
kill -9 6218

ОБНОВИТЬ:
Мне также удалось воспроизвести эту проблему (несколько раз) ... запустить службу локально, которая прослушивает порт XXX и запустить контейнер, который предоставляет тот же порт XXX ...
он не сможет запустить docker-compose up и процесс com.docker.slirp не будет убит, что приведет к сохранению проблемы до тех пор, пока процесс com.docker.slirp будет убит вручную (я даже добавил псевдоним для этого alias portfix='pkill com.docker.slirp' )

+1 на Mac

@ mad-raz отличное решение! благодаря!

Была такая же ошибка
Error starting userland proxy: write /port/tcp:0.0.0.0:80:tcp:172.17.0.5:80/ctl: errno 526

Для меня это был nginx.
Мне пришлось убить nginx, чтобы обойти его sudo nginx -s stop

+1 здесь тоже.

Пробовал обходной путь, предложенный @ mad-raz, и он очистил все оговорки, но они возвращаются через несколько секунд. Похоже, процесс com.docker.slirp повторно запускается службой сторожевого пса. В результате ошибка появляется при следующей компоновке докеров.

driver failed programming external connectivity on endpoint ... Bind for 0.0.0.0:9086 failed: port is already allocated

docker-compose версия 1.8.0-rc2, сборка c72c966

После завершения работы Docker для Mac эти процессы сохраняются.
% ps -ef | grep docker !10007 0 1086 1 0 Tue03PM ?? 0:00.01 /Library/PrivilegedHelperTools/com.docker.vmnetd 648074730 30807 1 0 1:49PM ?? 0:00.07 /Applications/Docker.app/Contents/MacOS/com.docker.osx.hyperkit.linux -watchdog fd:0 648074730 30808 30807 0 1:49PM ?? 0:00.03 /Applications/Docker.app/Contents/MacOS/com.docker.osx.hyperkit.linux -watchdog fd:0 648074730 30810 30807 0 1:49PM ?? 0:02.08 com.docker.db --url=file:///Users/astone/Library/Containers/com.docker.docker/Data/s40 --git /Users/astone/Library/Containers/com.docker.docker/Data/database

+1 на Mac :(

Обходной путь, удалив докер из меню верхней панели (значок Docker> Настройки> Удалить) и переустановив его :(

Спасибо @ alexander-emelyanov!
Я внезапно получил эту ошибку при запуске docker-compose up -d для моего проекта на OS X и не имел отношения к тому факту, что я установил PHP 7 на свой Mac (так что проверки синтаксиса SublimeText работают правильно) с помощью скриптов Liip, в тот же день.

Это действительно произошло из-за того, что Apache начал работать на моем Mac, и мне просто пришлось его остановить.

У меня проблема с запуском postgres. Я подтвердил, что postgres не запущен на моем хост-компьютере с brew services stop postgres . Я запустил lsof -i :5432 и получил следующий результат:

image

Docker запускает postgres для чего-то внутреннего? Когда я убил процесс с помощью SIGINT, значок в строке состояния докера начал вращаться, и он перезапустил службу. Единственный способ заставить его работать - это изменить порт хоста в моем файле docker-compose.

Прочтите, есть обходной путь, объясняющий именно то, что https://github.com/docker/compose/issues/3277#issuecomment -232505775

@ mad-raz При остановке процесса Docker (для Mac) автоматически перезапускается автоматически, и те же порты снова используются через несколько секунд после ...

В итоге я сбросил Docker (и, следовательно, удалил все контейнеры), и это снова сработало, все порты были освобождены 😕

Это действительно две проблемы:

  1. Появляется сбивающее с толку сообщение об ошибке, когда порт уже используется другим приложением (например, Apache). Это было исправлено в Docker 1.12.0 (теперь он явно говорит, что «порт уже выделен»).
  2. После остановки контейнеров порты, которые они используют, иногда все еще отображаются на localhost .

Кто-нибудь еще не испытывает проблемы. 2 после обновления Docker для Mac до последней версии ( 1.12.0 или 1.12.0-beta21 если вы используете бета-канал)?

У меня все еще возникает эта проблема.
Docker v1.12, Docker Compose v1.8.

Есть служба nginx, которая просто не запускается, а также различные другие, которые иногда дают сбой:

ERROR: for nginx  Cannot start service nginx: driver failed programming external connectivity on endpoint test_nginx_1 (3f72f35baab64b37c667a4a98e9b8c4adc312e2df7a16c80030536101c695546): Bind for 0.0.0.0:80 failed: port is already allocated

Пытался перезапустить, отключить весь проект и воссоздать, но ничего не работает.

Вывод sudo netstat -tulpn | grep 80 :

tcp6       0      0 :::80                   :::*                    LISTEN      3455/dockerd

Информация о докере:

Containers: 30
 Running: 30
 Paused: 0
 Stopped: 0
Images: 89
Server Version: 1.12.0
Storage Driver: btrfs
 Build Version: Btrfs v4.4
 Library Version: 101
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge null host overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Security Options: apparmor seccomp
Kernel Version: 4.4.0-31-generic
Operating System: Ubuntu 16.04.1 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 9.765 GiB
Name: apps
ID: 7WCN:K7EU:M6IO:NPF2:UK2W:HBKO:MUSD:V7FC:RNWU:3FSA:BNAR:TZEH
Docker Root Dir: /mnt/storage/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: No swap limit support
Insecure Registries:
 127.0.0.0/8

Версия:

Client:
 Version:      1.12.0
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   8eab29e
 Built:        Thu Jul 28 22:11:10 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.0
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   8eab29e
 Built:        Thu Jul 28 22:11:10 2016
 OS/Arch:      linux/amd64

Стоит отметить, что в моем проекте compose 29 сервисов.

Также странно, что когда Docker без причины зависает на порту 80, я не могу подключиться к порту 80 с другого хоста. Когда порт 80 законно используется контейнером, к порту 80 можно получить доступ извне.

одна из причин этой проблемы - отсутствие настройки docker-compose.yml если порт не используется вне контейнеров, он должен быть expose: d вместо ports: ed
поскольку использование ports открывает порт как для других контейнеров служб, так и для хост-машины ... в то время как expose открывает порт только для других контейнеров служб (не вмешиваясь в сопоставления портов хоста) ...

Моя проблема не в конфигурации (по крайней мере, я так не думаю).
Я могу перезапустить Docker Daemon и перезапустить все мои контейнеры, и каждый раз это будут разные контейнеры, которые выходят из строя с ошибкой. Кажется, ошибка в Docker зависает на портах, этого быть не должно.

В моем случае выше с nginx, даже если я удалю контейнер nginx и перезапущу демон докера, докер все еще прослушивает порты 80 и 443: /

Итак, мне удалось исправить мою проблему. В идеале я не хотел бы удалять Docker, так как хочу сохранить все свои образы, у меня довольно много загруженных! Вместо этого я удалил все свои пользовательские сети, удалил все свои контейнеры, а затем удалил docker/network/files/local-kv.db и перезапустил свою машину.

Похоже, что что-то внутри Docker было сломано в этом файле и сохранилось, и не было возможности очистить или исправить это. Вероятно, это связано с тем, что я начал с версии 1.11, затем прошел через все кандидаты на выпуск 1.12, а теперь нахожусь на версии 1.12, так что, возможно, что-то в пути обновления сломало это.

Сейчас вроде нормально работает 😄
У меня есть старый файл local-kb.db, сохраненный на тот случай, если кто-нибудь из команды Docker захочет взглянуть на него, если он будет полезен. Напомним, проблема заключалась в том, что демон прослушивал порты 80 и 443, даже если на этих портах не было контейнеров.

У меня та же проблема. Удалил все контейнеры, сеть и local-kv.db + перезапуск ... теперь снова работает.

Это также происходит с docker 1.12.0, docker-compose 1.8 и swarm 1.2.4 в ubuntu. Использование консул для кв. Не удалось присоединиться к конечной точке в сети GW: драйвер не смог запрограммировать внешнее подключение на шлюзе конечной точки. Контейнер, в котором возникает ошибка, остается в созданном состоянии, пока вы его не очистите.

Такая же ошибка в Debian:

# docker version
Client:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:        Thu Aug 18 05:02:53 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:        Thu Aug 18 05:02:53 2016
 OS/Arch:      linux/amd64
# docker-compose up -d
Starting elk_elk_1

ERROR: for elk  driver failed programming external connectivity on endpoint elk_elk_1 (8b8bb61b786bd1e07fa83c39a14338cab6c594cdfe74890c36e32ed9de33d8d9): Bind for 0.0.0.0:12201 failed: port is already allocated
# netstat -nl -p tcp  | grep 12201
udp6       0      0 :::12201                :::*                                14055/docker-proxy

такая же ошибка на ubuntu 16.04LTS.

версия докера
Клиент:
Версия: 1.12.1
Версия API: 1.24
Версия Go: go1.6.3
Git commit: 23cf638
Построен: 18 авг, 05:33:38 2016
ОС / Arch: Linux / amd64

Сервер:
Версия: 1.12.1
Версия API: 1.24
Версия Go: go1.6.3
Git commit: 23cf638
Построен: 18 авг, 05:33:38 2016
ОС / Arch: Linux / amd64

версия для докеров
docker-compose версия 1.7.1, сборка 0a9ab35
версия docker-py: 1.8.1
Версия CPython: 2.7.9
Версия OpenSSL: OpenSSL 1.0.1e 11 февраля 2013 г.

Шаг 3: ЗАПУСТИТЕ rm /etc/nginx/conf.d/default.conf
---> Использование кеша
---> 18fabfe71380
Шаг 4: ДОБАВИТЬ default.conf /etc/nginx/conf.d/
---> Использование кеша
---> ad8c17a883c9
Успешно собран ad8c17a883c9
Создание uauth_fpm_1
Создание uauth_redis_1
Создание uauth_web_1

ОШИБКА: для веб-драйвера не удалось программировать внешнее подключение на конечной точке uauth_web_1 (1a1e10881709d37b7b242f43dca561802ddf19d67f713cfd05eb2cdae3c4b0c0): сбой привязки для 0.0.0.0:443: порт уже выделен
Отслеживание (последний вызов последний):
Файл "", строка 3, в
Файл "compose / cli / main.py", строка 63, в основном
AttributeError: объект ProjectError не имеет атрибута msg
docker-compose вернул -1

Следуйте методу madjam002, чтобы решить эту проблему.

  1. docker rm -f все контейнеры.
  2. docker network rm сетевые интерфейсы.
  3. sudo rm /var/lib/docker/network/files/local-kv.db
    и перезапустите, это сработало. спасибо друзья.

Не могу найти файл /var/lib/docker/network/files/local-kv.db . Где я могу найти souch-файл? Я использую El Capitan 10.11.4 и Docker для Mac 1.12.

@ tsantos84 Docker будет работать внутри виртуальной машины, когда вы используете Docker для Mac.

Попробуйте следующее (хотя я этого не проверял):

  • docker rm -f $(docker ps -aq) (удалит все ваши контейнеры)
  • docker network rm $(docker network ls -q) (удалит все ваши сети)
  • docker run --rm -v /var/lib/docker/network/files:/network busybox rm /network/local-kv.db

Затем перезапустите Docker для Mac, и все будет в порядке 👍

Или вы можете подключиться к виртуальной машине xhyve:

экран -AmdS docker ~ / Library / Containers / com.docker.docker / Data / com.docker.driver.amd64-linux / tty
экран -S docker -p 0 -X материал
экран -r докер
rm -f /var/lib/docker/network/files/local-kv.db
экран -S docker -X выйти

На @aanand я все еще не могу
Я использую Ubuntu 14.04 и версию докера: 1.12.0

Запуск docker-compose up после остановки и удаления контейнеров вызывает следующую ошибку для официального образа postgresql:

 ERROR: for db  Cannot start service db: driver failed programming external connectivity on endpoint postgres (a0edc4146637dea0b4641f06f74a38be7977259142136faee2bd0f0e8f7d6a36): Bind for 0.0.0.0:5432 failed: port is already allocated
 ERROR: Encountered errors while bringing up the project.

Вот что показывает netstat:

 sudo netstat -nlp | grep 5432

 tcp6       0      0 :::5432     :::*    LISTEN

Исправление @ mad-raz для Mac не помогло мне в Ubuntu. Может ли это решить на Ubuntu

@mankind Вы пробовали

@ madjam002 да, кроме последней строки, то есть я не запускал docker run --rm -v / var / lib / docker / network / files: / network busybox rm /network/local-kv.db, потому что вы сказали, что у вас нет Я проверил это, и я не знаю, каковы будут последствия удаления всех этих файлов, поэтому я не удалял их, потому что хочу посмотреть, смогу ли я исправить это, не удаляя и не переустанавливая докер с нуля.

@mankind Это последняя строка, которая фактически выполняет исправление. Выполнение команды приведет к удалению всех ваших сетей из Docker, что является деструктивной операцией, но это единственный известный мне способ исправить эту проблему. Это точно такая же команда, как и та, что я опубликовал ранее в этом потоке, с той лишь разницей, что вы запускаете ее внутри контейнера Docker, а не на хосте.

Чтобы уточнить, вам нужно будет удалить все ваши контейнеры и запустить команду, которая удалит все ваши сети, но вы сохраните свои образы Docker, если это вас беспокоит.

@ madjam002 спасибо за разъяснения.

Я получил ту же ошибку, о которой говорили многие люди в этой ветке; однако моя проблема / решение отличалось от всех остальных.

Я использую докер-машину на своем Mac. У меня есть несколько проектов, в которых используется докер. Я использую одну машину и просто использую docker-compose для каждого проекта, чтобы запускать свои контейнеры на этой одной машине. Проблема, которую я обнаружил, заключалась в том, что я пытался запустить свои контейнеры для одного проекта (проект b), но контейнеры для другого проекта (проект a) по какой-то причине работали (не знаю почему).

В частности, я получал ошибки, которые я не мог привязать к портам 80 и 3306, потому что, когда я запускал контейнеры проекта b, проект a уже работал и привязывался к этим портам.

Я просто использовал docker ps -a чтобы убедиться, что другие контейнеры работают и уже привязаны к этим портам. Остановка этих контейнеров решила проблему для меня.

Основная проблема, которую я здесь вижу, заключается в том, что эти контейнеры из проекта продолжают запускаться без моего фактического запуска.

Надеюсь, это поможет кому-нибудь еще с этой проблемой.

Та же проблема исправлена ​​при остановке другого приложения на том же порту. Убедитесь, что приложение использует ваш порт с помощью netstat -anp | grep PORT (замените PORT на тот, который вы используете) или используйте другой порт. Это исправлено для меня.
Надеюсь, это кому-нибудь поможет.

@ragboyjr, возможно, вы начали проектировать контейнеры a с docker-compose up -d и в ваших файлах компоновки есть restart: always .

@ madjam002 Спасибо за это исправление! это меня беспокоит в течение нескольких месяцев на Docker для Mac, мне пришлось прибегнуть к сбросу до заводских настроек, но запуск этого в сочетании с перезапуском xhyve vm снова освободил эти порты.

Используя docker для Mac, в моем случае удаления всех контейнеров и уничтожения процесса докера, занимающего порты, было недостаточно для решения проблемы. Мне также пришлось удалить сети, связанные с этими портами.

остановить и удалить контейнеры докеров:
docker stop $(docker ps -a -q); docker rm $(docker ps -a -q); docker volume rm $(docker volume ls -qf dangling=true)

удалить проблемные сети:
docker network rm(docker network ls -q)

узнать, какой процесс занимает порт
lsof -nP | grep LISTEN

проверьте вывод последней команды и завершите процесс, занимающий порт (см. сообщение @ mad-raz о том, как это сделать). Следуя этим шагам, я решил проблему.

@marcelmfs вы абсолютно правы! большое вам спасибо за это.

+1 то же самое здесь, перезапуск докера для Mac исправляет это

Docker для Windows просто сказал мне обновить, и я это сделал. Теперь мои контейнеры не запускаются. Свежая перезагрузка, свежий перезапуск Docker, без запущенных контейнеров. База данных не запускается:

~Ответ об ошибке от демона: сбой драйвера при программировании внешнего подключения к базе данных конечной точки (44309324c7301ee0bba984b7bfee01201939c809b98f3d10333258d09d243931): Ошибка при запуске прокси-сервера пользователя: сбой привязки для 0.0.0.0:3306: порт уже выделенОшибка: не удалось запустить контейнеры: db~

D4W Версия 1.13.0 (9795)

Офф, чтобы узнать, как установить старую версию.

у меня та же проблема

# docker-compose -f /etc/docker/docker-compose.yml up -d
Creating influxdb1

ERROR: for influxdb  Cannot start service influxdb: driver failed programming external connectivity on endpoint influxdb1 (a5ebc95f32f72421ae46eb5bdc4e2fbf0c10f43da61188cb75d1322546111c1a): Bind for 0.0.0.0:8086 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.
# docker version
Client:
 Version:      1.13.1
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   092cba3
 Built:        Wed Feb  8 06:50:14 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.13.1
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   092cba3
 Built:        Wed Feb  8 06:50:14 2017
 OS/Arch:      linux/amd64
 Experimental: false



md5-a7d154bb42b823b1b35a4de5ba377ae0



# docker-compose version
docker-compose version 1.11.1, build 7c5d5e4
docker-py version: 2.0.2
CPython version: 2.7.12
OpenSSL version: OpenSSL 1.0.2g  1 Mar 2016

Перезапуск службы докеров не поможет, то же самое и с перезагрузкой хост-машины.

Просто проигнорируйте предыдущую запись, так как это была моя ошибка (опечатка)

У меня такая же проблема (openSUSE 42.2). Удаление файла /var/lib/docker/network/files/local-kv.db устранило проблему.

Удаление файла /var/lib/docker/network/files/local-kv.db и перезапуск докера также устранили эту проблему для меня в Ubuntu.

Неважно, проблема все еще существует

для меня это был самогонный nginx. как только я его остановил, докер снова заработал.

У меня возникает аналогичная проблема в OSX с портом UDP, удаление local-kv.db , похоже, не является вариантом, поскольку порт остается заблокированным, даже когда движок докера / виртуальная машина остановлены, но перезагрузка очищает связанный порт. Кажется, проблема на стороне OSX.

$ netstat -na|grep "\.53" <- порт 53 UDP не привязан

$ docker run -p 53:53/tcp -p 53:53/udp --cap-add=NET_ADMIN --name dnsmasq -d andyshinn/dnsmasq:2.75

$ netstat -na|grep "\.53"
udp4 0 0 *.53 *.* <- ок, теперь привязано

$ docker stop dnsmasq && sleep 2 && docker rm dnsmasq

$ netstat -na|grep "\.53"
udp4 0 0 *.53 *.* <- осталось!

$ sudo lsof -i -n -P|grep ":53" <- вывода нет!

$ netstat -tulnvp udp|grep 53
udp4 0 0 *.53 *.* 196724 9216 1307 0 <- хорошо, у нас есть pid

$ sudo ps aux|grep 1307 <- нет подходящего pid!

Кажется, что какой-то старый процесс «зомби» держит порт, но я не могу понять, как его освободить.

OSX 10.11.6

версия $ docker
Клиент:
Версия: 17.03.0-ce
Версия API: 1.26
Версия Go: go1.7.5
Git commit: 60ccb22
Построен: Чт, 23 фев, 10:40:59 2017
ОС / Arch: darwin / amd64

Сервер:
Версия: 17.03.0-ce
Версия API: 1.26 (минимальная версия 1.12)
Версия Go: go1.7.5
Git commit: 3a232c8
Построен: Вт 28 фев, 07:52:04 2017
ОС / Arch: Linux / amd64
Экспериментальный: правда

Могу только подтвердить, что это происходит и со мной на нескольких контейнерах.
OSX
➜ ~ версия докера
Клиент:
Версия: 17.03.1-ce-rc1
Версия API: 1.27
Версия Go: go1.7.5
Git commit: 3476dbf
Построен: 17 мар, пт, 00:27:41, 2017
ОС / Arch: darwin / amd64

Сервер:
Версия: 17.03.1-ce-rc1
Версия API: 1.27 (минимальная версия 1.12)
Версия Go: go1.7.5
Git commit: 3476dbf
Построен: 15 мар, среда, 20:28:18, 2017
ОС / Arch: Linux / amd64
Экспериментальный: правда

Несколько раз он разрешал это самостоятельно с помощью сборки docker-compose, а в другой раз путем перезапуска процесса docker.

+1 на Mac.
Я попытался удалить все контейнеры и перезапустить Docker. Но это повторяется снова ..

Аналогичная проблема в Ubuntu 16.04.2 LTS, Docker версии 17.04.0-ce, сборка 4845c56

$ docker run -p IP:80:3000 --link tribeca-mongo:mongo --name tribeca -d tribeca
29a0cac17720e203e4392b281460732dc5fe43c72e34bc7365760f8bba9dc348
docker: Error response from daemon: driver failed programming external connectivity on endpoint tribeca (54911841811bf7fb7b8b6b866eae2b790fe1b8b3bd18ccd0bb2089b565538c6c): Error starting userland proxy: listen tcp IP:80: bind: cannot assign requested address.

ubuntu такая же проблема

Mac 10.12.3 такая же проблема

Windows 10, та же проблема

Mac 10.12.3 (16D32), та же проблема
ОШИБКА: обнаружены ошибки при запуске проекта.

Windows 10, та же проблема

информация о докере
Контейнеры: 4
Бег: 3
Приостановлено: 0
Остановлено: 1
Фото: 7
Версия сервера: 17.03.1-ce
Драйвер хранилища: overlay2
Резервная файловая система: extfs
Поддерживает d_type: true
Native Overlay Diff: истина
Драйвер логирования: json-файл
Драйвер Cgroup: cgroupfs
Плагины:
Объем: местный
Сеть: хост-мост ipvlan macvlan null overlay
Рой: неактивен
Время выполнения: runc
Время выполнения по умолчанию: runc
Двоичный файл инициализации: docker-init
версия containerd: 4ab9917febca54791c5f071a9d1f404867857fcc
версия runc: 54296cf40ad8143b62dbcaa1d90e520a2136ddfe
версия инициализации: N / A (ожидается: 949e6facb77383876aeff8a6944dde66b3089574)
Параметры безопасности:
seccomp
Профиль: по умолчанию
Версия ядра: 4.9.13-moby
Операционная система: Alpine Linux v3.5
OSType: linux
Архитектура: x86_64
Процессоры: 4
Общий объем памяти: 6,538 ГиБ
Имя: moby
ID: HVV7: ECOB: GSCQ : UHGE: MUHA: GVD5: KS3W: YVJ5: DJ5E: AJIM : OHMR: 344T
Корневой каталог Docker: / var / lib / docker
Режим отладки (клиент): false
Режим отладки (сервер): true
Дескрипторов файлов: 36
Горутины: 39
Системное время: 2017-05-11T09: 41: 16.7020554Z
СобытияСлушатели: 0
Реестр: https://index.docker.io/v1/
Экспериментальный: правда
Небезопасные реестры:
127.0.0.0/8
Зеркала реестра:
https://mhihpv4t.mirror.aliyuncs.com
Live Restore Enabled: false

просто запустите: docker run -d -p 3142:3142 --name blaName Bla_imageID
без ip, а затем запустите docker container ls чтобы получить его IP-адрес, а затем подключитесь к нему.

Для меня это работает! в новой версии докера на MAC

Для тех, кто хочет указать конкретный адрес

Создайте свою сеть докеров:
docker network create --subnet=172.18.0.0/16 mynet123

затем просто запустите изображение (я возьму ubuntu в качестве примера)
docker run --net mynet123 --ip 172.18.0.22 -it ubuntu bash

Была такая же проблема в Windows Docker + WSL, и эта статья помогла ее решить:
https://www.mikeplate.com/2011/11/06/stop-http-sys-from-listening-on-port-80-in-windows/

вот что наконец сработало для меня на моем Mac:
sudo /usr/sbin/apachectl stop
затем вы можете определить, что httpd отсутствует, запустив ps -ef | grep httpd

Та же проблема в Windows 10. Решается простым перезапуском Docker (перезагрузка компьютера не прошла).

Я перезапустил докер, и он сработал
sudo service docker stop
тогда
sudo service docker start

То же самое в ubuntu 16.04 через docker-compose.
# docker -v Docker version 17.03.1-ce, build c6d412e

Перезапуск docker daemon сработал, но это печально.

Эта проблема может быть связана с libnetwork. Я сделал PR (https://github.com/docker/libnetwork/pull/1794). Надеюсь, это может быть полезно.

Это случилось со мной. Сопоставление портов не отображалось, когда я вводил netstat -an в командной строке с повышенными привилегиями Powershell, хотя я не пробовал то же самое из виртуальной машины. Мне пришлось перезапустить Docker для Windows, чтобы исправить. Это также воссоздает базовую виртуальную машину.

Это может быть очевидная вещь, чтобы попробовать, но у меня была эта ошибка, но я перезапустил сам Docker, а затем запустил контейнеры, и ошибка исчезла.

Та же ошибка - то же решение - перезапустил Docker на Mac, затем перезапустил команду, и она сработала.

У меня эта проблема сохраняется в нашей системе CI - "случайные" сборки не работают из-за этой ошибки. Несколько недель назад он работал нормально, потом начал появляться случайным образом. Кажется, что перезапуск докера помогает, но это все еще ненадежное решение для системы CI.
К сожалению, у меня нет под рукой информации о том, когда это начало происходить, подозреваю, когда я обновился со "старого" пакета докеров до Moby до docker-ce , но сейчас это только предположение

@ mad-raz Спасибо за решение. Я потратил часы, выясняя это, и ваш ответ сработал

Иногда docker-compose не может запустить желаемый контейнер и оставляет порт занятым прослушивающим процессом ... поэтому попробуйте перечислить все (прослушивающие) порты, используя
lsof -nP + c 15 | grep СЛУШАТЬ
выходы
Dropbox 384 IPv4 0x82c TCP 127.0.0.1:17600 (СЛУШАТЬ)
com.docker.slirp 6218 IPv4 0x82c TCP *: 5432 (СЛУШАТЬ) << Python 6268 IPv4 0x82c TCP 127.0.0.1:51617 (СЛУШАТЬ)
затем убейте идентификатор процесса com.docker.slirp, если он вызывает проблему
убить -9 6218

У меня такая же проблема на Mac 10.12.5 (16F73):

Version 17.03.1-ce-mac12 (17661)
Channel: stable
d1db12684b

Но это не проблема для того же образа докера в Linux:

Distributor ID: Ubuntu
Description:    Ubuntu 16.04.2 LTS
Release:    16.04
Codename:   xenial

Client:
 Version:      17.03.1-ce
 API version:  1.27
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Mon Mar 27 17:14:09 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.1-ce
 API version:  1.27 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   c6d412e
 Built:        Mon Mar 27 17:14:09 2017
 OS/Arch:      linux/amd64
 Experimental: false

та же ошибка

Докер версии 17.06.0-ce, сборка 02c1d87

Для меня обходными путями были остановка, удаление и повторный запуск контейнеров. Если это не помогло, остановите и перезапустите докер и повторите попытку. Если это не удается, перезагрузитесь, перестройте образы докеров и повторно запустите контейнеры.

Мне просто пришлось остановить apache и снова запустить docker-compose up.

Для меня простой перезапуск докера решает эту проблему.

У меня была эта проблема в Windows 10 Pro, и я остановил службу IIS, а затем работает!

Если вы получаете ошибку, связанную с Redis. убедитесь, что вы не запускаете Redis для Windows / Linux / и т. д. в фоновом режиме и / или при запуске

Завершение работы Docker через меню / перезапуск через меню не помогло мне решить проблему, поскольку не похоже, что Docker действительно полностью останавливается.

Я запустил sudo pkill -fi docker а затем снова открыл докер, и это было исправлено.

Снова проблема с docker-for-mac (не замеченная в предыдущем выпуске 17.06.0-ce-mac18 (18433)):
docker info Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 17.09.0-ce Storage Driver: overlay2 Backing Filesystem: extfs Supports d_type: true Native Overlay Diff: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host ipvlan macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: 06b9cb35161009dcb7123345749fef02f7cea8e0 runc version: 3f2f8b84a77f73d38244dd690525642a72156c64 init version: 949e6fa Security Options: seccomp Profile: default Kernel Version: 4.9.49-moby Operating System: Alpine Linux v3.5 OSType: linux Architecture: x86_64 CPUs: 2 Total Memory: 7.787GiB Name: moby ID: DTSR:I2Q4:V6L7:XGCE:YFZJ:UASU:47JH:K3K3:ZALX:DJQL:YM5O:GC64 Docker Root Dir: /var/lib/docker Debug Mode (client): false Debug Mode (server): true File Descriptors: 20 Goroutines: 32 System Time: 2017-10-11T08:37:39.082141259Z EventsListeners: 1 No Proxy: *.local, 169.254/16 Registry: https://index.docker.io/v1/ Experimental: true Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false

Была такая же проблема, похоже, что некоторые контейнеры все еще работали и блокировали порты.

выполните «docker ps -a», чтобы проверить, запущены ли у вас контейнеры
запустите «docker kill $ (docker ps -q)», чтобы остановить все запущенные контейнеры

У меня такая же проблема в версии для Mac 17.09.0-ce-mac35 (19611)

Попробуйте найти решение по теме madjam002. Если это не сработает, экспортируйте все свои пользовательские образы или убедитесь, что они могут быть восстановлены с помощью файлов Docker, затем полностью удалите все образы, удалите Docker, перезагрузитесь и переустановите Docker, но это может повториться. Обходной путь - изменить вашу конфигурацию на другой порт. Когда я делал это время от времени, новый порт снова зависал, и мне приходилось менять конфигурацию на третий порт. Непонятно, почему это происходит с некоторыми людьми, а с другими - нет.

На MAC остановите внутренний apache

sudo apachectl stop

У меня постоянно возникала эта проблема. Странно то, что я получаю ERR_SOCKET_NOT_CONNECTED в браузере при попытке доступа к сервису. Затем я останавливаю контейнер и пытаюсь запустить его снова, когда получаю сообщение об ошибке.

Повторный запуск движка Docker устраняет проблему, но вскоре возвращается.

После некоторого рытья я понял, что мои контейнеры могут связываться друг с другом через внутренние IP-адреса, назначаемые Docker, но не могут связываться с внешним миром (даже с Google и т. Д.).

Это могло произойти через 10 минут или через 2 часа использования.

Я использую MacOS High Sierra и последнюю версию Docker для Mac.

@rogoit, который решил проблему для меня. благодаря!

sudo launchctl unload /System/Library/LaunchDaemons/org.apache.httpd.plist у меня работает на Mac

Когда я получаю эту ошибку, мне удалось посетить каталог / port на хосте:

screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
cd /port/tcp:0.0.0.0:5000:tcp:172.18.0.16:3000  # or whatever file had the file exists error

В моем случае в этом каталоге был файл - я думаю, он назывался ctl или аналогичный, и после того, как я запустил cat в этом файле, чтобы увидеть, что в нем, проблема исчезла - файл, и каталог тоже исчез после cd .. и ls .

Тогда я мог бы запустить docker-compose start [service] .

Версия 17.09.0-ce-mac35 (19611)
Канал: стабильный
a98b7c1b7c

macOS 10.13.1 (17B1003)

Кажется, есть много разновидностей этого вопроса. Вот мой:

Докер для Windows в Windows 10.

Похоже, последнее обновление Windows 10 (Fall Creators Update, 2017) имеет новую «функцию». Когда вы завершаете работу, он запоминает, что работает, и может запустить их за вас при перезапуске.

Это нанесло ущерб Docker для Windows (и стерло несколько часов моего времени, прежде чем я установил соединение). Получил ужасный «драйвер не смог программировать внешнее соединение на конечной точке» при попытке повторно запустить мою докер-компоновку.

Оказывается, в этом случае простой перезапуск Docker решает эту проблему. Не сразу нашел, потому что перезагрузил компьютер. Думая, что это также перезапустит Docker. Нет, он восстановил Docker в плохом состоянии.

Кажется, нет никакого способа отключить эту новую функцию Win10.
https://answers.microsoft.com/en-us/insider/forum/insider_wintp-insider_perf-insiderplat_pc/programs-autostart-after-boot-in-windows-10-fall/09dd8d3e-7b36-45d1-9181-6587dd5d53ab

Вместо этого для «правильного» завершения мы вынуждены запускать это из командной строки: shutdown / s / t 0 или перезапускать Docker, когда я забываю это сделать.

@ biscuit314 Ваше предложение перезапустить службу

просто сделай это;

sudo apachectl stop

У меня никогда не было этого в Windows, но при переключении на Mac у меня была эта ошибка. Перезапуск Docker ничего не изменил. Решением было изменение порта для apache на Mac с 80 по умолчанию на другой (и, очевидно, перезапуск apache). После этого проблема исчезла.

Я знаю, что эта ветка все еще вызывает много дискуссий, но я собираюсь закрыть ее, поскольку она не имеет ничего общего с Compose как таковой. Как было указано в нескольких комментариях, убедитесь, что у вас нет хост-приложений, уже связывающих порт, который ваша служба пытается открыть (Apache - распространенный нарушитель).

Для тех, кто все еще приезжает сюда из Google: для моей локальной машины разработчика это был просто DHCP, который дал мне новую аренду, и служба докеров не уловила его и больше не могла создавать сетевые сопоставления.

К сожалению, ни одно из предложений не помогло мне. Докер для Mac Edge 18 что-то. Высокая Сьерра.

Единственное, что сработало, - это дождаться запуска Docker после перезагрузки системы, а затем запустить
$ docker-compose up -d --force-recreate вручную. Очень грустно.

В конце концов, я вернулся к Docker для Mac Stable 17, и все снова работает нормально.

В Fedora 27 я могу обойти эту проблему, отключив брандмауэр и перезапустив докер.

systemctl stop firewalld
systemctl restart docker

Я столкнулся с проблемой на сервере AWS Ubuntu 16. Просто sudo service docker restart решил мои проблемы ...

Обнаружил проблему на windows. Сбой любой службы на любом порту, перезапуск докера исправил это.

Да, тоже была эта проблема с Docker для Windows. Это исправлено при перезапуске Docker.

Также неоднократно сталкивался с этим сегодня и вчера с Docker для Windows. Перезапуск Docker не помог

Единственное, что сработало, - это дождаться запуска Docker после перезагрузки системы, а затем запустить
$ docker-compose up -d --force-воссоздать вручную. Очень грустно.

Это тоже сработало для меня.

Могу ли я что-нибудь сделать (собрать дополнительные журналы, отправить идентификатор диагностики), чтобы помочь в этом расследовании?

Прямо сейчас столкнулся с этой проблемой в Linux. systemctl restart docker исправил это для меня.

Здесь та же проблема. ИСПРАВЛЕНО, КОГДА я перезапустил Docker , и порты были освобождены - отсортировано

Я использую Windows 10.0.16299.125, Docker для Windows 17.12.0-ce (15139) и контейнеры Linux. Я отключил Skype, и ошибка _driver failed Programming External Connectivity on endpoint_ исчезла. Вот мой docker-compose.yml:

version: '3'

services:
  identity.api:
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
    ports:
      - "80"

Я совершенно забыл, что у меня на старте работает Valet . В основном просто проверьте все порты и остановите все остальное перед запуском докера.

Я модифицировал некоторые конфигурации iptables. И столкнулся с этой ошибкой. Перезапуск демона докеров исправил это ...

Starting 4b77a68f3777_deploy_nginx_1 ... 
Starting 6b96d171e3eb_deploy_database_1 ... 
deploy_fpm_1 is up-to-date
Starting 4b77a68f3777_deploy_nginx_1 ... error

ERROR: for 4b77a68f3777_deploy_nginx_1  Cannot start service nginx: b'driver failed programming external connectivity on endpoint 4b77a68f3777_deploy_nginx_1 (0efc2656fd512a2102e7ab82391048a6f5b9503819139096739d443a5b2553b0):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 443 -j DNAT --to-destination 172.18.0.Starting 6b96d171e3eb_deploy_database_1 ... error

ERROR: for 6b96d171e3eb_deploy_database_1  Cannot start service database: b'driver failed programming external connectivity on endpoint 6b96d171e3eb_deploy_database_1 (39fe9b0f86582e35df2c279dc2619f660008b6c3928e293744e005d5eca8245f):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 5432 -j DNAT --to-destination 172.19.0.2:5432 ! -i br-53878ee15994: iptables: No chain/target/match by that name.\n (exit status 1))'

ERROR: for nginx  Cannot start service nginx: b'driver failed programming external connectivity on endpoint 4b77a68f3777_deploy_nginx_1 (0efc2656fd512a2102e7ab82391048a6f5b9503819139096739d443a5b2553b0):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 443 -j DNAT --to-destination 172.18.0.3:443 ! -i br-9c08ee804427: iptables: No chain/target/match by that name.\n (exit status 1))'

ERROR: for database  Cannot start service database: b'driver failed programming external connectivity on endpoint 6b96d171e3eb_deploy_database_1 (39fe9b0f86582e35df2c279dc2619f660008b6c3928e293744e005d5eca8245f):  (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 5432 -j DNAT --to-destination 172.19.0.2:5432 ! -i br-53878ee15994: iptables: No chain/target/match by that name.\n (exit status 1))'

Столкнулся с этой проблемой прямо сейчас на бродячем боксе. Проблема с бродячим загруженным ящиком была исправлена.

та же проблема Windows 10

Та же проблема в Windows 10.
Ответ об ошибке от демона: драйвер не смог запрограммировать внешнее соединение на конечной точке
после попытки перезапустить контейнер.

@ gudge25 @magomedov Я не уверен, связано ли это, но 18.03-rc3 только что вышел, и он содержит это исправление . Возможно, стоит обновить, чтобы увидеть, исправляет ли эта сборка проблемы, с которыми здесь сталкиваются люди.

Изменить: я только что опробовал свой проект, который раньше страдал от этой проблемы после перезапуска. После 20 минут тестирования я больше не могу воспроизвести проблему.

мое решение было -> Сбросить Docker до заводских настроек по умолчанию

Каждый раз, когда я запускаю свой компьютер, запускаю свой контейнер, я вижу эту ошибку.
Ответ от демона об ошибке: драйвер не смог программировать внешнее подключение на конечной точке ea-mysql (4bf1d5fc80663ac6ceabb68283b7a31860672826709d73aecaeaaa8f50be69ff): Ошибка при запуске прокси-сервера userland: mkdir / port / tcp: вывод tcp: вывод 0.0.0.0 : 330.0.17 : вывод tcp: 0.0.0.0 : 330.0.1
Ошибка: не удалось запустить контейнеры: b

перезагрузите компьютер, запустите снова, все работает.

PS C: Usersphucnv7> информация о докере
Контейнеры: 1
Бег: 0
Приостановлено: 0
Остановлено: 1
Фото: 2
Версия сервера: 18.03.0-ce
Драйвер хранилища: overlay2
Резервная файловая система: extfs
Поддерживает d_type: true
Native Overlay Diff: истина
Драйвер логирования: json-файл
Драйвер Cgroup: cgroupfs
Плагины:
Объем: местный
Сеть: хост-мост ipvlan macvlan null overlay
Журнал: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Рой: неактивен
Время выполнения: runc
Время выполнения по умолчанию: runc
Двоичный файл инициализации: docker-init
версия containerd: cfd04396dc68220d1cecbe686a6cc3aa5ce3667c
версия runc: 4fc53a81fb7c994640722ac585fa9ca548971871
версия инициализации: 949e6fa
Параметры безопасности:
seccomp
Профиль: по умолчанию
Версия ядра: 4.9.87-linuxkit-aufs
Операционная система: Docker для Windows
OSType: linux
Архитектура: x86_64
Процессоры: 2
Общий объем памяти: 1,934 ГБ
Имя: linuxkit-00155d347405
ID: 7 SDD: BOPB : ZIQ4: XO2T: AMRA: BGMS : XKB7: EHGH: K73W : 2Y4D: SLCW: Z5DX
Корневой каталог Docker: / var / lib / docker
Режим отладки (клиент): false
Режим отладки (сервер): true
Дескрипторов файлов: 19
Горутины: 36
Системное время: 2018-03-28T01: 25: 45.5754181Z
СобытияСлушатели: 1
Реестр: https://index.docker.io/v1/
Ярлыки:
Экспериментальный: правда
Небезопасные реестры:
127.0.0.0/8
Live Restore Enabled: false

Думаю, я мог понять это, ребята, это действительно глупо ... Я на Mac, и у меня есть две отдельные учетные записи пользователей, на которых работает докер. После выхода из докера в другой учетной записи я вернулся, попробовал команду lando start и она отлично сработала.

Если у вас есть MAC, попробуйте остановить сервер. У меня апач.
sudo / usr / sbin / apachectl stop

Чтобы устранить следующую ошибку в Windows, перезапустите Docker (из меню в трее или выбрав опцию «Перезапустить Docker ...» в Настройках / Сброс)

Cannot start service YOUR_SERVICE: driver failed programming external connectivity on endpoint

Я не могу запустить ни один контейнер после полной загрузки окон и докеров. Никакое ожидание исправит это. Перезапуск Docker из Docker для значка в строке состояния Win решает эту проблему.

В 100% случаев Docker не работает после загрузки / перезагрузки, и мне приходится перезапускать демон Docker в 100% случаев.

РЕДАКТИРОВАТЬ: да, @IGZmanuelMartinVivaldi , это работает, но я должен делать это при каждом перезапуске хоста. Это проблема с компоновкой или с демоном Docker в целом?

@IGZmanuelMartinVivaldi благодарит за эти работы

@NoICE похоже, что это проблема, которая началась с обновлением Windows 10 Fall Creators, но я не знаю, что она будет исправлена ​​в текущем обновлении Spring или в новых версиях Dockers.

@IGZmanuelMartinVivaldi У меня та же проблема, что и у @NoICE. Мне нужно перезапускать докер все время после полной загрузки Windows. Это было в обновлении Fall Creators и в текущем.

PS. Я использую docker compose, любой мой файл docker compose использует версию 2.

Такая же проблема здесь @namerci. После полной загрузки Windows необходимо вручную перезагрузить докер.

Тоже самое :(
Перезапуск докера для окон или иногда остановка контейнеров, тогда docker system prune работает

Такая же проблема здесь

Я пытаюсь решить ту же проблему в течение последних двух дней, но пока безуспешно. Это происходит в Windows 7, docker toolbox, AWS SAM CLI и Eclipse.

+1 такая же проблема на windows 10

У меня была аналогичная проблема с моим сервером nginx. Для решения мне пришлось:

docker stop $(docker ps -qa)

В Windows 10 есть что-то вроде быстрой загрузки. Наверное, это проблема. На
другой комп без быстрой загрузки работает хорошо.

вес., 22 май 2018, 20:25 użytkownik rangeoshun [email protected]
написал:

У меня была аналогичная проблема с моим сервером nginx. Для решения мне пришлось:

docker stop $ (докер ps -qa)

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/docker/compose/issues/3277#issuecomment-391092688 ,
или отключить поток
https://github.com/notifications/unsubscribe-auth/ABGaX_NDPkbWf08T2wOkq1PjQz4v-ES3ks5t1FgPgaJpZM4IBfG_
.

РЕДАКТИРОВАТЬ: Это я слепой. В моей конфигурации была опечатка в номере порта.

Та же проблема - сбой привязки для 0.0.0.0:18305: порт уже выделен.
Но Порт не выделен. Проверено с помощью sudo lsof -i -P -n , и сервис может быть заявлен без проблем, когда докер не используется.

Версия: 18.03.1-ce-mac65 (24312)
Канал: стабильный
93354b38bd

Перезагрузка не помогает.
Сброс до заводских настроек не помогает.

Я тоже столкнулся с той же проблемой.
Я решил это, перезапустив докер.
Ребята, я вижу, что когда-то виртуальная машина может быть занята теми же портами, что у вас сейчас запущены.
Итак, перезапустив докер, вы можете решить эту проблему.

Как указывалось ранее . Это не проблема создания, это проблема Docker. Следовательно, почему это закрыто.
Для этого есть проблема в репозитории Docker .

Я мог привязать любую услугу к любому порту. По какой-то причине сообщение об ошибке показывало мне неизвестный IP-адрес. Я перезапустил Docker (Windows), и все заработало.

У меня была такая же проблема на Mac OS Sierra 10.12.6. Докер версии 18.03.1-ce.

Я решил это, применив предложение @ a14m :
Soution :
lsof -nP +c 15 | grep LISTEN

com.docker.vpnk 35957   18u     IPv4        0t0       TCP *:7501 (LISTEN)
com.docker.vpnk 35957   19u     IPv6        0t0       TCP [::1]:7501 (LISTEN)

Найдите процесс, который прослушивает заблокированный порт, и уничтожьте его:
kill -9 35957

Затем перезапустите Docker, и все в порядке

Отключение быстрой загрузки в Windows 10 помогает

Перезапуск докера работает

Перезапуск докера (с помощью команды «Перезагрузка» или выход вручную и повторный запуск) у меня НЕ работал.

Сбросить Docker до заводских настроек по умолчанию

Мне это помогло.

это поможет мне сбросить Docker.

Пожалуйста :)

В среду, 8 августа 2018 г., в 10:20 Бен [email protected] написал:

это поможет мне.

-
Вы получаете это, потому что вас упомянули.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/docker/compose/issues/3277#issuecomment-411311339 ,
или отключить поток
https://github.com/notifications/unsubscribe-auth/ACPM4OXDOchoiUzCWAwmJM7COIHHwY4yks5uOpE7gaJpZM4IBfG_
.

-
С уважением
Антоний
тел. +380669197533
тел2. +380636564340
Paypal http://paypal.me/Satskiy
http://paypal.me/Satskiy?ppid=PPC000654&cnac=PL&rsta=en_PL(en_DK)&cust=NN8XJS9XEP22C&unptid=21db79ac-ef8d-11e5-9553-9c8e992ea258&t=&cal=4d776c21ca7d2&calc=4d776c21ca7d2&calf=4d776c21ca7d2&unp_tpcid=ppme-social-business-profile- создано & page = main: email & pgrp = main: email & e = op & mchn = em & s = ci & mail = sys
Сацкий. [email protected]

У меня работает Restart Docker. (Докер для Windows, Docker version 18.06.1-ce, build e68fc7a )

Чтобы добавить к комментарию Рэя-Эльдата: я был сбит с толку, потому что перезагрузка моего компьютера дважды не сработала (та же версия: 18.06.1-ce для Windows), и, конечно же, перезагрузки компьютера достаточно, чтобы также считаться перезапуском Docker, верно? Полагаю, перезапуск не помог, верно? Ну нет, лол. Я захожу в Docker и нажимаю «Перезагрузить», и теперь он работает.

РЕДАКТИРОВАТЬ: О, интересно, теперь я знаю, почему это произошло (возможно). Я думаю, что перезагрузка моего компьютера действительно создала эту проблему. Проверь это:

https://stackoverflow.com/questions/40668908/running-docker-for-windows-error-when-exposing-ports

Соответствующая цитата:

В последнем обновлении Windows 10 (Fall Creators Update, 2017) появилась новая «функция». Он автоматически запускает все приложения, которые были запущены при последнем завершении работы.

Это восстанавливает Docker для Windows в плохом состоянии. Из-за этого казалось, что эти порты используются чем-то другим - это был его призрак. Это объясняло, почему эти порты все еще использовались, хотя я остановил / запустил свои контейнеры и даже перезагрузился!

Учитывая это, я все еще подозреваю обновление Windows 18.06.1-ce, так как это не было проблемой для меня, пока я не обновился до него.

У меня Windows 10 Pro и на ноутбуке, и на настольном компьютере с той же проблемой. В настоящее время я использую версию: 18.06.1-ce, но, по крайней мере, последние 2 предыдущие версии имели такое же поведение. Это постоянная и легко воспроизводимая проблема, возникающая в очень распространенной конфигурации.

Мы все делаем что-то не так или это требует исправления?

Вы также можете проверить это с помощью ACTIVITY MONITOR в OSX. Я видел эту проблему, когда другой пользователь вошел в систему и использует Docker. Убейте процессы или выйдите из системы, и все заработает.

У меня это произошло в докере для окон с nginx. Я перезапустил докер и сейчас его не вижу. Конечно, он, вероятно, будет там, если я удалю, а затем создаю новый контейнер для nginx.

У меня была такая же проблема (запуск обратного прокси-сервера nginx на порту 80) в Windows 10, возможно, вызванная предыдущей установкой виртуального ящика.

Сброс докера до заводских настроек по умолчанию (щелкните правой кнопкой мыши значок в области уведомлений -> настройки -> сброс) исправил это для меня.

перезапустить докер для меня. на windows 10

спасибо @ballmdr , это

У меня была такая же проблема. Порт 80 использовался IIS.

1) Нажмите "Выполнить", введите - 'inetmgr', чтобы открыть IIS.
2) В действиях (вверху справа) - нажмите «Остановить».
3) Docker снова запустить

У меня возникла такая же проблема с MAC moJave после обновления docker-compose. Просто перезапуск докера решает проблемы для меня.

То же самое, у меня macOS Mojave, и при перезапуске исправлены проблемы.

@makproductions спасибо.

Я получаю эту проблему довольно регулярно (в Windows), и перезапуск Docker решает проблему.

Ubuntu 18.04, перезапуск докера решает проблему

Проблема все еще существует в Windows в 18.06.1-ce-win73 (19507) Plase, повторно откройте это.

Обычно это происходит, когда postgresql запущен и, используя порт 5432, попробуйте остановить службу и запустить docker-compose up --build, чтобы он выполнил инициализацию.

служба sudo postgresql stop
docker-compose up - построить

должно сработать

madjam002

1. docker rm -f все контейнеры.
2. docker network rm сетевые интерфейсы.
3. sudo rm /var/lib/docker/network/files/local-kv.db

Я пробовал это сейчас, но у меня возникла другая проблема: docker: Error response from daemon: failed to update store for object type *libnetwork.endpointCnt: Key not found in store. . Как решить эту проблему, подскажите .... Спасибо.

Я знаю, что эта ветка все еще вызывает много дискуссий, но я собираюсь закрыть ее, поскольку она не имеет ничего общего с Compose как таковой.

Это проблема с докером, а не с компоновкой докера. Этот вопрос закрыт, поэтому не собирается набирать обороты. В основном репозитории докеров уже открыто несколько проблем. Комментарии, вероятно, должны быть туда:

См. Https://github.com/docker/for-win/issues/2722
и https://github.com/docker/for-win/issues/1967

@ shin- Это должно быть заблокировано?

Я получаю ту же ошибку в следующей ситуации:
Докер 18.06.1, Docker Compose 1.22.0, Ubuntu 18.04

Запуск d1df6864f98d2599_api_1 для d1df6864f98d2599_api_1 Невозможно запустить сервисный api: сбой драйвера при программировании внешнего подключения на конечной точке d1df6864f98d2599_api_1 (6b3f4a9c68d6858ace2b39a0296ed41620ff3007b14c23678b5000.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 для

Когда я запускаю контейнеры с помощью docker-compose из командной строки, контейнер называется src_api_1 , потому что я запускаю команду из папки src .

Когда я запускаю docker-compose из TeamCity, контейнер называется d1df6864f98d2599_api_1 и я получаю эту ошибку.

Это команда docker-compose -f src/docker-compose-production.yml up -d api .

Я просто изменил свой номер порта в файле .yaml, и он начал работать у меня.

В моем случае это произошло потому, что пароль для входа в Windows был обновлен, и, по-видимому, новый пароль не был обновлен до докера. Мне пришлось перейти в докер для Windows -> настройки -> общий диск, снять отметку с общих дисков, нажать `` Применить '', а затем снова проверить и применить, затем он запросит пароль. После ввода пароля он снова работает.

Это продолжает мешать моей установке. Перезапуск докера не освобождает порт в OSX. Перезагрузка хост-машины освобождает порт.

У меня такое же сообщение об ошибке, но проблема возникла из-за одновременной работы с двумя разными страницами.

При переключении с одного на другой я забыл использовать docker-compose down,

Я тоже столкнулся с той же проблемой, но спустя долгое время я нашел идеальное решение

  1. введите docker container ls -a (проверьте контейнер, который использует этот номер порта)
  2. докер контейнер rm -f(Освободите порт, удалив этот контейнер)
  3. Присвоение новому контейнеру номера порта

@ ronakganatra9 эй, у меня вопрос, где ты можешь найти свой собственный порт в файле .yaml?

`` PS C: UsersMouazDesktopfernandroidstf-poc> docker-compose up
stf-poc_storage-temp_1_20d132e37939 актуален
stf-poc_dev-triproxy_1_7224046ecd68 актуален
stf-poc_auth_1_f76f43d5e179 актуален
stf-poc_rethinkdb_1_6e5e0628f86c актуален
stf-poc_triproxy_1_7d61645de13d актуален
stf-poc_adb_1_53f170a2d9ae актуален
stf-poc_storage-plugin-apk_1_efbbfa2dc680 обновлен
stf-poc_storage-plugin-image_1_ebc249ed0769 актуален Запуск stf-poc_migrate_1_ebc2c2157fdf ...

Запуск stf-poc_migrate_1_ebc2c2157fdf ... готово

stf-poc_api_1_713c609d74d5 актуален
stf-poc_reaper_1_cca8849d63b8 актуален
stf-poc_websocket_1_a41866f85947 актуален
stf-poc_app_1_db0fc2088323 актуален
Ошибка запуска e3e9585e6a3a_stf-poc_provider_1_6961669e5bb1 ...

ОШИБКА: для e3e9585e6a3a_stf-poc_provider_1_6961669e5bb1 Не удается запустить поставщик услуг: b'driver сбой программирования внешнего подключения на конечной e3e9585e6a3a_stf-poc_provider_1_6961669e5bb1 (6033aa098528aac29e541b1d52303e4106c0f7a760222995b4c0b348a7d76941): Ошибка при

ОШИБКА: для провайдера не удается запустить сервис-провайдер: b'driver не удалось запрограммировать внешнее подключение на конечной точке e3e9585e6a3a_stf-poc_provider_1_6961669e5bb1 (6033aa098528aac29e541b1d52303e4106c0f7a7602229941b1d52303e4106c0f7a760222995b0.0.0.0.0.0.0.0.0: ошибка пользователя promission.0.0.0.0.0.0.0.0.0.0.0.0: ошибка пользователя promission.0.0.
ОШИБКА: обнаружены ошибки при запуске проекта.
PS C: UsersMouazDesktopfernandroidstf-poc> контейнер докеров ls
КОНТЕЙНЕР ИДЕНТИФИКАЦИЯ ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНО СОСТОЯНИЕ ИМЕНА ПОРТОВ
d46b94a05e8b stf-poc_nginx "/entrypoint.sh" 2 минуты назад Перезапуск (1) 38 секунд назад stf-poc_nginx_1_4c61f58776f1
6674d0116aa9 openstf / stf : последний "stf storage-plugin-…" 2 часа назад Вверх Около минуты 3000 / tcp stf-poc_storage-plugin-image_1_ebc249ed0769
df2e7c721d55 openstf / stf : последний "stf storage-plugin-…" 2 часа назад вверх Около минуты 3000 / tcp stf-poc_storage-plugin-apk_1_efbbfa2dc680
a697ef5e309b openstf / stf : latest "stf app --auth-url…" 2 часа назад Вверх Около минуты 3000 / tcp stf-poc_app_1_db0fc2088323
fefaebe9340a openstf / stf : последний "stf websocket --por…" 2 часа назад Вверх Около минуты 3000 / tcp stf-poc_websocket_1_a41866f85947
8a1fd41fa92d stf-poc_storage-temp "stf storage-temp -…" 2 часа назад Вверх Около минуты 3000 / tcp stf-poc_storage-temp_1_20d132e37939
c7f48e1b4d74 openstf / stf : последний "stf reaper dev --co…" 4 часа назад Вверх Около минуты 3000 / tcp stf-poc_reaper_1_cca8849d63b8
293d4cf18ddb openstf / stf : последний "stf api --port 3000…" 4 часа назад Вверх Около минуты 3000 / tcp stf-poc_api_1_713c609d74d5
257667df032e openstf / stf : последний "stf processor --con…" 4 часа назад вверх Около минуты 3000 / tcp stf-poc_processor_1_9c46a2ef3b9d
e065f41e2f61 rethinkdb: 2.3 "rethinkdb --bind all" 4 часа назад Вверх Около минуты 8080 / tcp, 28015 / tcp, 29015 / tcp stf-poc_rethinkdb_1_6e5e0628f86c
522eb78fc46a sorccu / adb: latest "/ sbin / tini - adb -…" 4 часа назад вверх Около минуты 5037 / tcp stf-poc_adb_1_53f170a2d9ae
44e03f74b098 openstf / stf : последнее «stf triproxy app -…» 4 часа назад Вверх Около минуты 3000 / tcp stf-poc_triproxy_1_7d61645de13d
32f4f65a0d4e openstf / stf : latest "stf triproxy dev -…" 4 часа назад Вверх Около минуты 3000 / tcp stf-poc_dev-triproxy_1_7224046ecd68
7465e46fd2a0 openstf / stf : последний "stf auth-mock --app…" 4 часа назад Вверх Около минуты 3000 / tcp `stf-poc_auth_1_f76f43d5e179
``

это то, что происходит со мной, и я попытался перезапустить, удалить и переустановить, очистить деньги и сбросить настройки до заводских настроек, он все еще показывает такую ​​ОШИБКУ, как вы думаете, мне нужно изменить порт ADB с 5037 на 3000 / tcp?

если да, как я могу это сделать?
БЛАГОДАРЯ !!

Просто перезапустите Docker . У меня это сработало.

Просто перезапустите Docker . У меня это сработало.

У меня это тоже сработало! По какой-то причине это не сработало после того, как я перезапустил компьютер, но сработал после того, как я щелкнул «перезапустить докер» на панели значков.

Просто перезапустите Docker. У меня это сработало.

Это сработало и для меня.

Да, перезапуск действительно работает, но это все еще очень раздражает, мне приходится делать это каждый раз, когда я хочу запустить Docker ...

Докер перезапуска может разрешить все, потому что докер перезапуска очистит весь работающий контейнер.

Я снова проверяю свой файл docker compose.yml и удаляю контейнер, который находится внутри файла docker-compose.yml, и не нужно перезапускать докер.

наслаждаться.

Выполните следующую команду и получите идентификатор контейнера, который использует порт, который вы хотите убить. Используйте идентификатор контейнера и удалите его с помощью второй команды.

docker ps -a
docker rm container_id

Привет, я запускаю Docker (v 18.09.0) и получаю следующую ошибку при запуске прокси-сервера. Пожалуйста помоги.

C: Program FilesDockerDockerResourcesbindocker.exe: ответ об ошибке от демона: драйвер не смог программировать внешнее подключение на прокси-среде конечной точки (fcc9a4c77b0de66ef7e8c8893b6eafb49f8071e7b9c3b1ce1def3a5e1434358d): ошибка запуска пользователя denland.050: неожиданная ошибка.

Пробовали переустановить / перезапустить докер / систему, удалить контейнеры и т. Д.
Ничего не помогло.

Привет, я запускаю Docker (v 18.09.0) и получаю следующую ошибку при запуске прокси-сервера. Пожалуйста помоги.

C: Program FilesDockerDockerResourcesbindocker.exe: ответ об ошибке от демона: драйвер не смог программировать внешнее подключение на прокси-среде конечной точки (fcc9a4c77b0de66ef7e8c8893b6eafb49f8071e7b9c3b1ce1def3a5e1434358d): ошибка запуска пользователя denland.050: неожиданная ошибка.

Пробовали переустановить / перезапустить докер / систему, удалить контейнеры и т. Д.
Ничего не помогло.

Попробуйте остановить докер и снова запустить его в режиме администратора. После запуска откройте Power Shell и в режиме администратора.
Поскольку в сообщении об ошибке указано «разрешение отклонено», возможно, это решит вашу проблему. Я не уверен.

перезапуск службы докеров помог мне решить эту проблему.

версия 18.09.0

Привет, я запускаю Docker (v 18.09.0) и получаю следующую ошибку при запуске прокси-сервера. Пожалуйста помоги.
C: Program FilesDockerDockerResourcesbindocker.exe: ответ об ошибке от демона: драйвер не смог программировать внешнее подключение на прокси-среде конечной точки (fcc9a4c77b0de66ef7e8c8893b6eafb49f8071e7b9c3b1ce1def3a5e1434358d): ошибка запуска пользователя denland.050: неожиданная ошибка.
Пробовали переустановить / перезапустить докер / систему, удалить контейнеры и т. Д.
Ничего не помогло.

Попробуйте остановить докер и снова запустить его в режиме администратора. После запуска откройте Power Shell и в режиме администратора.
Поскольку в сообщении об ошибке указано «разрешение отклонено», возможно, это решит вашу проблему. Я не уверен.

Это не решает проблему, я запустил терминал и докер в режиме администратора, и он по-прежнему выдает ту же ошибку.

Была такая же проблема сегодня. Я запустил docker-compose down и перезапустил службу докеров, которая, похоже, сработала.

ERROR: for web_1  Cannot start service web: driver failed programming external connectivity on
endpoint web_1 (5694e5627dbac6cd543d65c764d4b9877fc67557b10f6f8a1f1e7170ffdc8314): 
Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8080:tcp:172.19.0.2:8080: input/output error

ERROR: for web  Cannot start service web: driver failed programming external connectivity on 
endpoint web_1 (5694e5627dbac6cd543d65c764d4b9877fc67557b10f6f8a1f1e7170ffdc8314): 
Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8080:tcp:172.19.0.2:8080: input/output error
Encountered errors while bringing up the project.

Перезагрузите мой докер в Windows 10, и тогда он работает. ^^

Столкнулся с такой же проблемой. Помогает перезапуск докера для Windows.

Если вы используете Windows, запустите netstat -ab и проверьте, что использует порт TCP 0.0.0.0:443 , для меня vmware использовал его, хотя я вышел из него

Перезагрузка докера - не лучшее народное решение. (Также это первое, что я сделал)

У меня такая же проблема, и ее можно решить, перезапустив докер.

Просто перезапустил, и он снова заработал

У меня такая же проблема с 18.09.1 ​​в Linux. Можно ли снова открыть этот вопрос? В противном случае следует открыть проблему для лучшего сообщения об ошибке, указывающего, что на самом деле это не ошибка докера, как это кажется.

Если вы по-прежнему ожидаете, что люди в какой-то момент перезапустят программное обеспечение, они просто вырвут докер; это не похоже на то, что нет других контейнерных систем.

Перезапуск докера у меня сработал только первый раз. После этого всякий раз, когда я нажимаю команду docker run я получаю ту же ошибку. Постоянно не фиксируется.

Чего я пытаюсь достичь:

Я просто пытаюсь настроить среду LEMP (nginx, php-fpm, MySQL) на моем компьютере с centos 7.

Команды:

Перезапустил докер

service docker restart

Создать мостовую сеть

docker network create -d bridge LEMP

Запустить контейнер php-fpm

docker run --name php-fpm -v /home/ashish/work/docker/php:/app -p "9000:9000" --network LEMP --rm -d php:7-fpm

При первом запуске после команды она работает со следующим выводом:

b003815c0ee2fba05aa24b0965871b55ce717fcd56557066acd448519b59498b

iptables -L

Цепочка INPUT (policy DROP)
target prot opt ​​источник назначения
ПРИНИМАЙТЕ все - где угодно и где угодно
ПРИНЯТЬ все - где угодно и где угодно государство СВЯЗАННО, СОЗДАНО
ПРИНЯТЬ все - где угодно и где угодно состояние НОВИНКА
ПРИНЯТЬ все - где угодно и где угодно состояние НОВИНКА
ПРИНЯТЬ icmp - в любом месте в любом месте НОВИНКА
ПРИНЯТЬ icmp - в любом месте в любом месте НОВИНКА
ПРИНЯТЬ icmp - в любом месте в любом месте НОВИНКА
ПРИНЯТЬ icmp - в любом месте в любом месте НОВИНКА
ПРИНЯТЬ tcp - в любом месте tcp spts: 1024 : 65535 dpt: 28082 state NEW

Цепочка ВПЕРЕД (policy DROP)
target prot opt ​​источник назначения

ВЫВОД ЦЕПИ (ОТКАЗ политики)
target prot opt ​​источник назначения
ПРИНИМАЙТЕ все - где угодно и где угодно
ПРИНЯТЬ все - где угодно и где угодно государство СВЯЗАННО, СОЗДАНО
ПРИНЯТЬ tcp - где угодно 192.168.40.17 tcp dpt: objcall
ПРИНЯТЬ все - где угодно и где угодно состояние НОВИНКА
ПРИНЯТЬ все - где угодно и где угодно состояние НОВИНКА
ПРИНЯТЬ все - где угодно и где угодно состояние НОВИНКА
ПРИНЯТЬ tcp - в любом месте tcp spts: 1024 : 65535 dpt: 28082 state NEW

### If you notice, It has removed my DOCKER chain. Now when i am trying to run my nginx container, It gives me same error:

docker run --name nginx -v /home/ashish/work/docker/nginx/conf/local.conf:/etc/nginx/conf.d/default.conf -v / home / ashish / work / docker / php: / app -p 80:80 --rm -itd --network LEMP nginx


2dab94327ebbfb1849960df440cd8a1ba15b6253471b77838a5dce139b5cccdc

docker: ответ об ошибке от демона: драйвер не смог запрограммировать внешнее соединение на конечной точке nginx (df5852f12bb611dcf0057418e50b3f679efcbd81c91af6679c8e44b8a59fe4bf): (iptables failed: iptables --wait -t filter -A DOCKER! -i br-e39e .0.3 --dport 80 -j ACCEPT: iptables: Нет цепочки / цели / совпадения с этим именем. (Статус выхода 1)).
``

Обходной путь, который работает для меня:

Версия докера:

docker -v

Docker version 18.09.0, build 4d60db4

Старая версия ядра машины:

uname -r

3.10.0-957.1.3.el7.x86_64

Взял другой компьютер с другой версией ядра:

uname -r

3.10.0-862.2.3.el7.x86_64

о / п

Это сработало. Ошибок, подобных приведенной выше, не произошло. Все идет гладко.

Я сменил ядро ​​на старой машине, и у меня это сработало. Хотя менять ядро, особенно в производственной среде, не очень хорошо.

Для пользователей Windows: отключите «быстрый запуск» в настройках питания, и все заработает!
https://stackoverflow.com/a/47818614

В последнем обновлении Windows 10 (Fall Creators Update, 2017) появилась новая «функция». Он автоматически запускает все приложения, которые были запущены при последнем завершении работы.
Это восстанавливает Docker для Windows в плохом состоянии. Из-за этого казалось, что эти порты используются чем-то другим - это был его призрак. Это объясняло, почему эти порты все еще использовались, хотя я остановил / запустил свои контейнеры и даже перезагрузился!

Докер перезапуска может разрешить все, потому что докер перезапуска очистит весь работающий контейнер.

Я снова проверяю свой файл docker compose.yml и удаляю контейнер, который находится внутри файла docker-compose.yml, и не нужно перезапускать докер.

наслаждаться.

Это сработало для меня Спасибо! :)

Такая же проблема здесь - в моем случае проблема была в apache, работающем на порту 80.

Другие выше упоминали netstat, и это отличный инструмент. Экземпляр nginx работал на 80-м порту. Я использовал netstat -ano | findstr: 80 (cmd) или bash >> netstat -ano | grep: 80, затем убил PID

https://stackoverflow.com/a/20724040/7954264

Я решил это, обновив сборку Windows с 1803 по 1809 год.

остановите демон докеров и начните как администратор.

docker rm $(docker ps -a -q) действительно сработало для меня.

Извините за это, но на моем компьютере решением была

У меня было такое же сообщение об ошибке, и я перезапустил Docker в Windows . Это сделало свое дело.

Сначала обновите Windows 10 до 1809.
Затем отключите параметр «Запускать рабочий стол Docker при входе в систему» ​​в настройках Docker.
Наконец, запустите докер вручную (перезапускать не нужно).
Проблема исчезла, и он хорошо работает на моем компьютере.

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

Та же проблема для меня в Mac OS Mojave, пытаясь вызвать mailu с помощью docker-compose:

$ docker-compose -p mailu up -d
Creating network "mailu_default" with driver "bridge"
Creating mailu_fetchmail_1 ... 
Creating mailu_redis_1     ... 
Creating mailu_front_1     ... error
Creating mailu_fetchmail_1 ... done
Creating mailu_redis_1     ... done
ERROR: for mailu_front_1  Cannot start service front: driver failed programming external connectivity on endpoint mailu_front_1 (f7085e55644392e76cCreating mailu_antivirus_1 ... done
Creating mailu_admin_1     ... done

ERROR: for front  Cannot start service front: driver failed programming external connectivity on endpoint mailu_front_1 (f7085e55644392e76c6ae5cd6f3be159c58195e0fc85ae8610f2d84d42dbecab): Error starting userland proxy: port is not a proto:IP:port or unix:path: 'tcp:[:'
ERROR: Encountered errors while bringing up the project.
$

и следующее:

  • Рабочий стол Docker: 2.0.0.3
  • Двигатель: 18.09.2
  • Машина: 0.16.1
  • Нотариус: 0.6.1
  • Credential Helper: 0.6.0
  • Kubernetes: v1.10.11

Я только что перезапустил свой Mac, а потом запустил

$ docker rm $ (докер ps -a -q)

как кто-то рекомендовал.

Вот соответствующая строфа из docker-compose.yml для "переднего" сервиса:

  front:
    image: ${DOCKER_ORG:-mailu}/${DOCKER_PREFIX:-}nginx:${MAILU_VERSION:-1.6}
    restart: always
    env_file: mailu.env
    logging:
      driver: json-file
    ports:
      - "127.0.0.1:80:80"
      - "::1:80:80"
      - "127.0.0.1:443:443"
      - "::1:443:443"
      - "127.0.0.1:25:25"
      - "::1:25:25"
      - "127.0.0.1:465:465"
      - "::1:465:465"
      - "127.0.0.1:587:587"
      - "::1:587:587"
      - "127.0.0.1:110:110"
      - "::1:110:110"
      - "127.0.0.1:995:995"
      - "::1:995:995"
      - "127.0.0.1:143:143"
      - "::1:143:143"
      - "127.0.0.1:993:993"
      - "::1:993:993"
    volumes:
      - "/Users/rmfuhrer/mailu/certs:/certs"
      - "/Users/rmfuhrer/mailu/overrides/nginx:/overrides"

AFAICT, я ничего не слышу ни на одном из портов, упомянутых в конфигурации docker-compose:

$ netstat -a -f inet -p tcp -n | grep LISTEN
tcp4       0      0  *.17500                *.*                    LISTEN     
tcp4       0      0  127.0.0.1.17603        *.*                    LISTEN     
tcp4       0      0  127.0.0.1.17600        *.*                    LISTEN     
tcp4       0      0  *.49178                *.*                    LISTEN     
tcp4       0      0  127.0.0.1.6670         *.*                    LISTEN     
tcp4       0      0  127.0.0.1.8888         *.*                    LISTEN     
tcp4       0      0  *.88                   *.*                    LISTEN     
tcp4       0      0  *.445                  *.*                    LISTEN     
tcp4       0      0  *.22                   *.*                    LISTEN     
$

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

Я тоже могу подтвердить это.

У нас такая же проблема с Windows 10. Перезагрузка, похоже, решает проблему, но нам приходится перезапускать ее несколько раз в неделю. Есть ли исправление для этого?

Мне нужно перезапускать докер каждый день ... я бы очень хотел исправить это!

У меня все еще та же проблема. Это происходит, если вы включили быстрый запуск (по умолчанию enablede) в Windows 10. Вы можете отключить его -> https://www.windowscentral.com/how-disable-windows-10-fast-startup, и тогда вам не понадобится перезапускать докер каждый день. Но это просто работа ...

Была такая же проблема,
просто перезапустите докер, исправьте это для меня

Для меня это было потому, что другие контейнеры работали с этим портом. Я только что изменил отображение портов в docker-compose.yml , например, для службы контейнера memcache :

Из:

  memcache:
    container_name: project_memcache
    image: memcached:latest
    ports:
        - "11211:11211"

Кому (следующий внешний порт - 11212):

  memcache:
    container_name: project_memcache
    image: memcached:latest
    ports:
        - "11212:11211"

У меня работает перезагрузка докера

@yedincisenol да, но необходимость перезагружать каждый день немного раздражает

У меня такая же проблема, и да, перезапуск решил мою проблему. Надеюсь, они это исправят.

Перезапустите Docker ... только что

Перезагрузка докера в Windows также работает для меня: /

Если вы работаете на Mac, и ваш веб-сервер докеров не запускается, это может быть общий доступ к файлам - для этого Apple использует встроенный Apache. Или...
~sudo apachectl stop~
а еще лучше - отключить обмен файлами.

У меня та же проблема, что и с IIS, поэтому я ее остановил.

Как сказал @AarashFarahani . Я остановил IIS, который мне не нужен для этого проекта, и ошибка исчезла.

Для пользователей Mac: попробуйте остановить службы httpd, apache.

docker rm $(docker ps -a -q) действительно сработало для меня.

У меня не работало (Windows 10, Docker версия 18.09.2)

➜ sudo netstat -nlp | grep 443
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 501/vmware-hostd tcp6 0 0 :::443 :::* LISTEN 501/vmware-hostd

Задача решена

просто перезапустите докер и снова разверните -> работает для меня

Получил такую ​​же проблему.

Мое обходное решение (потому что это, похоже, единственное решение) заключалось в том, чтобы просто отключить «Запускать рабочий стол Docker при входе в систему».
Но оставьте это при запуске программы в управлении задачами.

Если вы не можете найти его в управлении задачами, вы можете поместить ярлык в:
%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

Поэтому я предполагаю, что способ использования Docker «Запустить рабочий стол Docker при входе в систему» ​​- это не то, чего хочет Windows 10.


Версия докера:
18.09.2, сборка 6247962

Версия для Windows:
Windows 10 Pro Insiders Preview 1903, сборка 18898.1000

Ни один из них не помог мне. Остановка служб (как описано здесь ) наконец дала результат:

net stop docker
net stop com.docker.service
taskkill /IM "dockerd.exe" /F
taskkill /IM "Docker for Windows.exe" /F
net start docker
net start com.docker.service
"c:\program files\docker\docker\Docker for Windows.exe"

Нажатие на значок рабочего стола Docker на панели задач и выберите «Перезагрузить» ... у меня работало в Windows 10!

docker: ответ об ошибке от демона: драйвер не смог программировать внешнее соединение на конечной точке sad_sanderson

Если кто использует Docker Desktop
Выполните следующие шаги: (Избегайте перезапуска рабочего стола Docker)

  • Закройте рабочий стол Docker
  • Снова запустите Docker Desktop
  • Это будет работать нормально

Моя проблема заключалась в том, что я инициализировал Docker Swarm на своей машине для некоторых экспериментов. Все вернулось к норме после запуска docker swarm leave --force

Перезапуск докера каждый раз для этой проблемы - это всего лишь временное решение. Действительно, он решает проблему, поскольку останавливает все порты, которые могут быть заняты контейнерами. Но настоящая проблема заключается в том, что порты не отображаются с помощью netstat или команды docker ps , поэтому определить, какой контейнер использует порт, становится настоящей головной болью.

Если кто-то найдет способ, отличный от перезапуска Docker или отключения быстрого запуска, напишите здесь.

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

Я тоже могу подтвердить это.

Ага на Win10, это помогает

@dtekchandani

Решение : просто отключите «Запускать рабочий стол Docker при входе в систему».
Но сохраните его при запуске программы (например, скопируйте ссылку на докер в папку автозагрузки здесь:
% USERPROFILE% AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup

Это заставит Docker запускаться позже после входа в систему, и это работает для многих людей.

win + r > cmd(запуск от имени администратора) > netstat -aon | more
дальше ищем локальный адрес с портом :8000, запоминаем PID, > ctrl + alt + del переходим во складку "Подробности" ищем процесс с ID как у PID > снимаем задачу(завершаем задачу) > restart your Docker > и заново запускаем (Run) свой docker-compose.
Это должно решить проблему
2 вариант: просто откройте ваш docker-compose.yml и измените порт с 8000 на любой другой( ports:
- '8000:80') > Run you docker

Здесь та же проблема, однако перезапуск Docker / Windows / Hyper-V приводит к сбою.
Вот распечатка моего сценария выполнения.
C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: driver failed programming external connectivity on endpoint pihole (c3b944c90dc0b7d948c3dd833becc51b754174a56c36272cda325611d9b792f5): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: An attempt was made to access a socket in a way forbidden by its access permissions.
Diag ID:
5C4CFABD-4AEA-4F67-9016-E9B6D58A3934/20190918072240
Сценарий начального запуска: (если это даже помогает)
docker run -d --name pihole -p 53:53/tcp -p 53:53/udp -p 67:67/udp -p 80:80 -p 443:443 -v "${DOCKER_CONFIGS}/pihole/:/etc/pihole/" -v "${DOCKER_CONFIGS}/dnsmasq.d/:/etc/dnsmasq.d/" -e ServerIP="${IP}" --restart=unless-stopped --cap-add=NET_ADMIN --dns=127.0.0.1 --dns=1.1.1.1 pihole/pihole:latest
Чтобы попытаться перезапустить контейнер, я просто использую
docker start pihole
Печать, кажется, указывает на ошибку разрешений, поэтому я попытался запустить Docker Desktop _ и_ Powershell с повышенными разрешениями, но все равно получаю ту же ошибку. и когда я говорю то же самое, я имею в виду каждый раз дословно.

Для тех, кто работает на Mac, попробуйте эту команду, чтобы увидеть процессы и остановить их (другие команды у меня не работали):

sudo lsof -iTCP -sTCP:LISTEN -n -P

Мне помогла перезагрузка Windows.
Докер 2.1.0.3.38240

Перезапуск докера в MAC OS X MOJAVE не решает эту проблему.
Я пытаюсь открыть несколько портов, например 5066, 5086, 8021 и некоторые другие.

У меня работает с sudo.

Моя проблема была с портом 5000

$ docker ps

CONTAINER ID        IMAGE                            COMMAND                  CREATED             STATUS              PORTS                    NAMES
d21a21826483        web                        "watchexec --restart…"   3 weeks ago         Up 28 hours         0.0.0.0:5000->5000/tcp   web_1

Потом после остановки контейнера с 5000 портами мне это помогло.

$ docker stop d21a21826483

Нашел эту ветку, и ничего из вышеперечисленного мне не помогло.

Я использую Ubuntu, и мне пришлось использовать:

sudo service docker restart

Я попробовал prune и все остальные команды, и докер был уверен, что ничего не запущено, но после перезапуска службы все снова заработало.

У меня была такая же проблема, и я попробовал описанное выше, но у меня ничего не помогло.
Что он действительно работал, так это перезапуск Windows.

Для любого из пользователей Windows: если вы столкнетесь с этой проблемой после выхода Windows из спящего режима, перезагрузка компьютера решит проблему для меня.
Ранее была аналогичная проблема с быстрым повышением в окнах, и я предполагаю, что эти два связаны ...

Это решило мою проблему с окнами:

  • docker-compose down
  • Закройте рабочий стол докера.
  • Убить докер-сервис
    image
  • Запустите докер, всплывающее окно попросит вас активировать службу докера через net.exe, примите
  • docker-compose up

Перезапустите Docker ... только что

Это отличный обходной путь, но перезапуск указывает на ошибку, и эту проблему не следует закрывать.

Что сработало для меня, так это сброс рабочего стола докера до заводских значений.

Пробовал вышеуказанное безуспешно. Я заставил его работать, протерев весь мой кеш докеров, запустив:

docker ps -aq | xargs docker rm -f && \ docker images -q | xargs docker rmi -f && \ docker volume list -q | xargs docker volume rm -f

3 года и этот баг все еще жив и здоров ...

У меня такая же ошибка. Так удивлен, что эта ветка работает до сих пор.

sudo apachectl stop это сработало для меня, так как казалось, что apache работает на Mac

Windows 10:
докер ps -a
docker rm $ (докер ps -a -q)
докер-сочинять

У меня такая же ошибка. Так удивлен, что эта ветка работает до сих пор.

Это сработало для меня:

cd /usr/libexec/docker/
ln -s docker-proxy-current docker-proxy
service docker restart

Имеются такие же проблемы в Oracle Linux. Помог перезапуск службы Docker.

Это решило мою проблему с окнами:

  • docker-compose down
  • Закройте рабочий стол докера.
  • Убить докер-сервис
    image
  • Запустите докер, всплывающее окно попросит вас активировать службу докера через net.exe, примите
  • docker-compose up

решение выше работает для меня, спасибо.

когда докер работает, я получил это ниже.
когда докер перезапустился, я все еще получил это ниже.
когда служба докеров убита и перезапущена, порт не занят, докер снова работает.

**netstat -aon|findstr "5601"**
  TCP    0.0.0.0:5601           0.0.0.0:0              LISTENING       9512
  TCP    192.168.6.202:55601    203.208.41.75:443      TIME_WAIT       0
  TCP    [::]:5601              [::]:0                 LISTENING       9512

**tasklist|findstr 9512**
com.docker.backend.exe        9512 Services                   0     10,916 K

У меня была эта проблема в Ubuntu 18.04, как и в случае с @ Jason-2020, перезапуск службы докеров освободил порт и для меня в моей системе.

Как бы нелогично это ни звучало, простой перезапуск службы сработал.

(Не нужно было очищать кеши, старые файлы или что-то еще.)

для Windows проблема легко может решить:
просто перезапустите докер и попробуйте снова запустить сервер.
image

На сегодняшний день при использовании W10 по-прежнему возникает эта проблема.
Перезапустил докер, проблема не исчезла.
Закрытый докер и повторное открытие, проблема все еще есть.

Ни одно из других решений не помогло мне: /

На сегодняшний день при использовании W10 по-прежнему возникает эта проблема.
Перезапустил докер, проблема не исчезла.
Закрытый докер и повторное открытие, проблема все еще есть.

Ни одно из других решений не помогло мне: /

Попробуйте с решением LoiCha. Это единственный обходной путь, который действительно сработал для меня.

Напоминаем, что у меня возникла проблема с Amazon ECS (режим EC2) при попытке запустить новое определение задачи. Оказывается, что-то еще прослушивало этот порт на хосте EC2. Я остановил процесс, и определение задачи могло начаться нормально.

Остановка службы докеров в диспетчере задач решила мою проблему на W10

@ tsantos84 Docker будет работать внутри виртуальной машины, когда вы используете Docker для Mac.

Попробуйте следующее (хотя я этого не проверял):

* `docker rm -f $(docker ps -aq)` (will remove all of your containers)

* `docker network rm $(docker network ls -q)` (will remove all of your networks)

* `docker run --rm -v /var/lib/docker/network/files:/network busybox rm /network/local-kv.db`

Затем перезапустите Docker для Mac, и все будет в порядке +1

Спасибо! Это помогло мне быстро решить проблему.

@ tsantos84 Docker будет работать внутри виртуальной машины, когда вы используете Docker для Mac.
Попробуйте следующее (хотя я этого не проверял):

* `docker rm -f $(docker ps -aq)` (will remove all of your containers)

* `docker network rm $(docker network ls -q)` (will remove all of your networks)

* `docker run --rm -v /var/lib/docker/network/files:/network busybox rm /network/local-kv.db`

Затем перезапустите Docker для Mac, и все будет в порядке +1

Спасибо! Это помогло мне быстро решить проблему.

Привет @ fede-r1c0, я не знаю, почему вы упомянули меня, и, вероятно, вы хотели отметить другого пользователя. В любом случае, я рад, что вы решили свою проблему. 👍

@jamshid
Можете ли вы опубликовать o / p sudo netstat -nlp | grep 8123 . Благодарю.

и sudo service {nameOfService} stop

Я столкнулся с таким же поведением, но для переопределения службы путем создания docker-compose.override.yml . Используемые файлы:

docker-compose.yml :

version: '3.2'
services:
  app:
    build:
      context: ./
    ports:
     - "8000:80"
    volumes:
     - ./:/app

docker-compose.overrride.yml :

version: '3.2'
services:
  app:
    ports:
     - "8001:80"

Это дает мне следующую НЕОЖИДАННУЮ ошибку:

ERROR: for my_app_1  Cannot start service app: driver failed programming external connectivity on endpoint my_app_1 (9235372fe636fba32be67f9f101a3432139c691a41fc6d207e53c98e25139a29): Bind for 0.0.0.0:8000 failed: port is already allocated

ERROR: for app  Cannot start service app: driver failed programming external connectivity on endpoint my_app_1 (9235372fe636fba32be67f9f101a3432139c691a41fc6d207e53c98e25139a29): Bind for 0.0.0.0:8000 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.

Я ожидал, что директива ports в docker-compose.override.yml переопределит то же самое в docker-compose.yml (порт 8000 на моем компьютере уже выделен другим приложением, поэтому я попробовал переопределить), но этого не произошло, что неверно и похоже на ошибку.

ОС: Windows 10
Докер: 19.03.12, build 48a66213fe

В моем случае проблема была связана с запуском consul локально, но также в контейнере.

Для меня это было связано с брандмауэром, в CentOS 7 запустите докер в обычном режиме во время работы, затем остановите firewalld или просто перезапустите его, теперь попробуйте перезапустить этот контейнер докеров, выдает эту ошибку. Перезапустите службу докеров и попробуйте еще раз ... работает нормально.

Я столкнулся с таким же поведением.
Это решило мою проблему с centos7:
ps -ef | grep docker
kill the "...dockerd -H fd:// --containerd=/run/containerd/containerd.sock" process

Нашел эту ветку, и ничего из вышеперечисленного мне не помогло.

Я использую Ubuntu, и мне пришлось использовать:

sudo service docker restart

Я попробовал prune и все остальные команды, и докер был уверен, что ничего не запущено, но после перезапуска службы все снова заработало.

БЛАГОДАРЮ ВАС! СВЯТОЙ Ф.К., я потратил целый день, пытаясь исправить это.
ЕСТЬ 2020 ГОД, ЭТОМ 4 ГОДА И ЭТА ПРОБЛЕМА СУЩЕСТВУЕТ. WTF

Была ли эта страница полезной?
5 / 5 - 1 рейтинги