version: '3.4' services: nakadi: build: . container_name: nakadi ports: - "8080:8080" depends_on: - postgres - zookeeper - kafka environment: - SPRING_PROFILES_ACTIVE - NAKADI_OAUTH2_MODE=OFF - NAKADI_FEATURES_DEFAULT_FEATURES_CONNECTION_CLOSE_CRUTCH - NAKADI_FEATURES_DEFAULT_FEATURES_DISABLE_EVENT_TYPE_CREATION - NAKADI_FEATURES_DEFAULT_FEATURES_DISABLE_EVENT_TYPE_DELETION - NAKADI_FEATURES_DEFAULT_FEATURES_DISABLE_SUBSCRIPTION_CREATION - NAKADI_FEATURES_DEFAULT_FEATURES_REMOTE_TOKENINFO - NAKADI_FEATURES_DEFAULT_FEATURES_KPI_COLLECTION - NAKADI_FEATURES_DEFAULT_FEATURES_DISABLE_DB_WRITE_OPERATIONS - NAKADI_FEATURES_DEFAULT_FEATURES_DISABLE_LOG_COMPACTION - NAKADI_ZOOKEEPER_BROKERS=zookeeper:2181 - SPRING_DATASOURCE_URL=jdbc:postgresql://postgres:5432/local_nakadi_db - SPRING_DATASOURCE_USERNAME=nakadi - SPRING_DATASOURCE_PASSWORD=nakadi postgres: image: postgres:9.5 container_name: postgres ports: - "5432:5432" volumes: - "./database/nakadi:/docker-entrypoint-initdb.d" environment: POSTGRES_USER: nakadi POSTGRES_PASSWORD: nakadi POSTGRES_DB: local_nakadi_db zookeeper: image: zookeeper:3.4.9 hostname: zookeeper container_name: zookeeper ports: - "2181:2181" environment: ZOO_MY_ID: 1 kafka: image: wurstmeister/kafka:1.1.0 hostname: kafka container_name: kafka ports: - "9094:9094" 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://kafka:9092,OUTSIDE://_{HOSTNAME_COMMAND}:9094 KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9094 KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'false' KAFKA_DELETE_TOPIC_ENABLE: 'true' volumes: - /var/run/docker.sock:/var/run/docker.sock depends_on: - zookeeper