ETC

docker compose yml 파일

curiousKidd 2024. 4. 4. 12:58
반응형
version: "3.3"

services:

  mysql:
    image: mysql:8.2.0
    container_name: mysql
    command: ['--character-set-server=utf8mb4', '--collation-server=utf8mb4_unicode_ci']
    ports:
      - "3306:3306"
    volumes:
      - ./mysql/data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: "root"
      MYSQL_DATABASE: "test"
      MYSQL_USER: "test"
      MYSQL_PASSWORD: "test"
    networks:
      - net

  vault:
    image: hashicorp/vault:latest
    environment:
      VAULT_DEV_ROOT_TOKEN_ID: testtoken
    ports:
      - 8200:8200

  redis:
    image: redis:7.2.3
    container_name: redis
    hostname: redis
    ports:
      - 6379:6379

  zookeeper:
    image: zookeeper:3.8.1                  # wurstmeister/zookeeper 는 오히려 M1 안됨
    container_name: zookeeper
    #ports:
    #  - "2181:2181"
    networks:
      - pipeline
  kafka:
    #build: .
    image: wurstmeister/kafka:2.13-2.8.1    # M1 때문..
    container_name: kafka
    ports:
      - 9092:9092
      - 29092:29092
    environment:
      DOCKER_API_VERSION: 1.22
      KAFKA_BROKER_ID: 1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL
      KAFKA_LISTENERS: INTERNAL://kafka:29092,EXTERNAL://localhost:9092
      KAFKA_ADVERTISED_LISTENERS: INTERNAL://kafka:29092,EXTERNAL://localhost:9092
      KAFKA_DEFAULT_REPLICATION_FACTOR: 1
      KAFKA_NUM_PARTITIONS: 1
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    depends_on:
      - zookeeper
    networks:
      - pipeline
  kafka-ui:
    image: provectuslabs/kafka-ui
    container_name: kafka-ui
    ports:
      - "8989:8080"
    #restart: always
    environment:
      KAFKA_CLUSTERS_0_NAME: kafka_test
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: INTERNAL://kafka:29092,EXTERNAL://localhost:9092
      KAFKA_CLUSTERS_0_ZOOKEEPER: zookeeper:2181
    depends_on:
      - kafka
    networks:
      - pipeline


networks:
  net:
    driver: bridge
  pipeline:
    driver: bridge
반응형