Docker Compose容器立即退出

2024-06-06 23:06:20 发布

您现在位置:Python中文网/ 问答频道 /正文

这两天我一直在和多克吵架,所以我真的希望有人能帮我。我想要的:一个Docker有一个正在运行的Kafka实例,另一个Docker有一个Python retriever脚本。我想要一个compose文件,它将构建所有三个映像(Kafka、Zookeeper和Python),并立即执行Python文件。我遇到的问题是,当我编写docker时,Kafka和Zookeeper容器正在工作,但是Python容器立即存在。有人能给我一种方法让Python容器继续运行,这样我就可以进入bash了吗?在

命令:docker-compose down && docker-compose -f docker-compose-swarm.yml up -d

编写docker-swarm.yml公司文件:

version: '3.2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka:latest
    ports:
      - target: 9094
        published: 9094
        protocol: tcp
        mode: host
    environment:
      HOSTNAME_COMMAND: "docker info | grep ^Name: | cut -d' ' -f 2"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_ADVERTISED_LISTENERS: INSIDE://:9092,OUTSIDE://_{HOSTNAME_COMMAND}:9094
      KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9094
      KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
      KAFKA_CREATE_TOPICS: "rontgen_images"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
  python:
    build:
      context: .
      dockerfile: DockerfilePython

DockerfilePython:

^{pr2}$

docker ps-a:

CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS                        PORTS                                                NAMES
c1bd71d6720c        wurstmeister/zookeeper      "/bin/sh -c '/usr/sb…"   43 seconds ago      Up 41 seconds                 22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp   kafkadocker_zookeeper_1
81d4b03f0aa7        kafkadocker_python          "/bin/sh -c '['pytho…"   43 seconds ago      Exited (127) 42 seconds ago                                                        kafkadocker_python_1
44ca9f264340        wurstmeister/kafka:latest   "start-kafka.sh"         43 seconds ago      Up 42 seconds                 0.0.0.0:9094->9094/tcp                               kafkadocker_kafka_1

Tags: kafka文件composedockeragozookeeper容器command