Docker завершил работу с кодом 0 при запуске docker-compose - PullRequest
0 голосов
/ 19 мая 2019

Ниже мои файлы.

DOckerFile

    # Python support can be specified down to the minor or micro version
    # (e.g. 3.6 or 3.6.3).
    # OS Support also exists for jessie & stretch (slim and full).
    # See https://hub.docker.com/r/library/python/ for all supported Python
    # tags from Docker Hub.
    FROM python:3.7.3

    LABEL Name=mindsdb Version=0.0.1

    WORKDIR /app
    ADD . /app

    RUN  pip install mindsdb

**Docker Compose**

version: '3'

services:
  app:
    container_name: mindsdb
    image: mindsdb
    build:
      context: ./
    volumes:
      - /path/to/mindsdb:/app/
    # tty: true

Когда я включаю tty: true, он показывает следующее и застревает

Creating mindsdb ... done
Attaching to mindsdb
mindsdb | Python 3.7.3 (default, May  8 2019, 05:28:42) 
mindsdb | [GCC 6.3.0 20170516] on linux
mindsdb | Type "help", "copyright", "credits" or "license" for more information.

Включение многословия в docker-compose up туфлях ниже:

compose.cli.verbose_proxy.proxy_callable: docker attach -> <generator object socket_raw_iter at 0x104116f68>
compose.cli.verbose_proxy.proxy_callable: docker start <- ('4511f48c4370b53c2f0cbe9f9c6479ebd9f76ad9426f315ef288dbdea947ed5f')
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
compose.parallel.feed_queue: Pending: set()
urllib3.connectionpool._make_request: http://localhost:None "POST /v1.25/containers/4511f48c4370b53c2f0cbe9f9c6479ebd9f76ad9426f315ef288dbdea947ed5f/start HTTP/1.1" 204 0
compose.cli.verbose_proxy.proxy_callable: docker start -> None
Starting mindsdb ... done
compose.parallel.feed_queue: Pending: set()
compose.parallel.parallel_execute_iter: Finished processing: <Service: app>
compose.parallel.feed_queue: Pending: set()
Attaching to mindsdb
compose.cli.verbose_proxy.proxy_callable: docker events <- (filters={'label': ['com.docker.compose.project=mindsdb', 'com.docker.compose.oneoff=False']}, decode=True)
mindsdb | Python 3.7.3 (default, May  8 2019, 05:28:42) 
mindsdb | [GCC 6.3.0 20170516] on linux
mindsdb | Type "help", "copyright", "credits" or "license" for more information.
urllib3.connectionpool._make_request: http://localhost:None "GET /v1.25/events?filters=%7B%22label%22%3A+%5B%22com.docker.compose.project%3Dmindsdb%22%2C+%22com.docker.compose.oneoff%3DFalse%22%5D%7D HTTP/1.1" 200 None
compose.cli.verbose_proxy.proxy_callable: docker events -> <generator object APIClient._stream_helper at 0x1041913b8>

Я не понимаю, почему он попадает в оболочку Python. Даже docker run -v /path/to/mindsdb:/app/ -i -t python:3.7.3 делает то же самое.

1 Ответ

0 голосов
/ 19 мая 2019

Это потому, что в вашем Dockerfile не установлено " CMD " или " ENTRYPOINT ".

Эти две команды сообщат Docker, чтовыполнить при входе в докер.Причина, по которой вы видите оболочку python, возможно, заключается в том, что это ENTRYPOINT по умолчанию или CMD для докера «python: 3.7.3», который вы наследуете в начале вашего Dockerfile.

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