ошибка тайм-аута для основных команд docker-compose - PullRequest
0 голосов
/ 14 октября 2019

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

$ docker-compose ps
ERROR: An HTTP request took too long to complete. Retry with --verbose to obtain debug information.
If you encounter this issue regularly because of slow network conditions, consider setting COMPOSE_HTTP_TIMEOUT to a higher value (current value: 60).

Нет никаких причин, почему этот процесс должен занимать где-то около 60 секунд, обычноэто занимает меньше десяти.

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

Вот мой файл docker-compose:

---
version: '3.7'

services:
  assets:
    build:
      context: .
      args:
        NPM_TOKEN: "${NPM_TOKEN}"
        IS_LCL: "TRUE"
    container_name: foobar_assets
    volumes:
      - .:/app:delegated
      - /app/node_modules
      - "${MESSAGING_PATH:-./node_modules/@foobar/baz}:/app/local_modules/@foobar/baz"
    ports:
      - "4005:4005"
      # - "8888:8888"
    env_file:
      - .env
      - .env-overrides
    healthcheck:
      test: curl -f http://localhost:4005/assets-manifest.json && echo 'assets are ready!'
      interval: 2s
      timeout: 1s
      retries: 100
    entrypoint: ['./rsync-entrypoint.sh']
    command: ['/usr/local/bin/npm', 'run', 'dev:assets']
    init: true

  bff:
    build:
      context: .
      args:
        NPM_TOKEN: "${NPM_TOKEN}"
        IS_LCL: "TRUE"
    volumes:
      - .:/app:delegated
      - /app/node_modules
    container_name: foobar_bff
    links:
      - redis
    ports:
      - "4010:4010"
      - "9231:9231"
    env_file:
      - .env
      - .env-overrides
    depends_on:
      - assets
    entrypoint: ['./rsync-entrypoint.sh']
    command: ['/usr/local/bin/npm', 'run', 'dev:server']
    init: true

  redis:
    image: redis:2.8
    container_name: foobar_redis

networks:
  default:
    external:
      name: lcl.foobar.io

Я использую Docker для Mac 2.1.0.3 и пробовал перезапустить его так же, как и весь мой mac. Это временно решает проблему, но затем повторяется.

...