mirror of
				https://github.com/datahub-project/datahub.git
				synced 2025-11-03 20:27:50 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			187 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			187 lines
		
	
	
		
			6.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
networks:
 | 
						|
  default:
 | 
						|
    name: datahub_network
 | 
						|
services:
 | 
						|
  broker:
 | 
						|
    container_name: broker
 | 
						|
    depends_on:
 | 
						|
    - zookeeper
 | 
						|
    environment:
 | 
						|
    - KAFKA_BROKER_ID=1
 | 
						|
    - KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181
 | 
						|
    - KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
 | 
						|
    - KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://broker:29092,PLAINTEXT_HOST://localhost:9092
 | 
						|
    - KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1
 | 
						|
    - KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS=0
 | 
						|
    - KAFKA_HEAP_OPTS=-Xms256m -Xmx256m
 | 
						|
    hostname: broker
 | 
						|
    image: confluentinc/cp-kafka:5.4.0
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_KAFKA_BROKER_PORT:-9092}:9092
 | 
						|
  datahub-actions:
 | 
						|
    depends_on:
 | 
						|
    - datahub-gms
 | 
						|
    environment:
 | 
						|
    - DATAHUB_GMS_HOST=datahub-gms
 | 
						|
    - DATAHUB_GMS_PORT=8080
 | 
						|
    - KAFKA_BOOTSTRAP_SERVER=broker:29092
 | 
						|
    - SCHEMA_REGISTRY_URL=http://schema-registry:8081
 | 
						|
    - METADATA_AUDIT_EVENT_NAME=MetadataAuditEvent_v4
 | 
						|
    - METADATA_CHANGE_LOG_VERSIONED_TOPIC_NAME=MetadataChangeLog_Versioned_v1
 | 
						|
    - DATAHUB_SYSTEM_CLIENT_ID=__datahub_system
 | 
						|
    - DATAHUB_SYSTEM_CLIENT_SECRET=JohnSnowKnowsNothing
 | 
						|
    - KAFKA_PROPERTIES_SECURITY_PROTOCOL=PLAINTEXT
 | 
						|
    hostname: actions
 | 
						|
    image: acryldata/datahub-actions:${ACTIONS_VERSION:-head}
 | 
						|
    restart: on-failure:5
 | 
						|
  datahub-frontend-react:
 | 
						|
    container_name: datahub-frontend-react
 | 
						|
    depends_on:
 | 
						|
    - datahub-gms
 | 
						|
    environment:
 | 
						|
    - DATAHUB_GMS_HOST=datahub-gms
 | 
						|
    - DATAHUB_GMS_PORT=8080
 | 
						|
    - DATAHUB_SECRET=YouKnowNothing
 | 
						|
    - DATAHUB_APP_VERSION=1.0
 | 
						|
    - DATAHUB_PLAY_MEM_BUFFER_SIZE=10MB
 | 
						|
    - JAVA_OPTS=-Xms512m -Xmx512m -Dhttp.port=9002 -Dconfig.file=datahub-frontend/conf/application.conf
 | 
						|
      -Djava.security.auth.login.config=datahub-frontend/conf/jaas.conf -Dlogback.configurationFile=datahub-frontend/conf/logback.xml
 | 
						|
      -Dlogback.debug=false -Dpidfile.path=/dev/null
 | 
						|
    - KAFKA_BOOTSTRAP_SERVER=broker:29092
 | 
						|
    - DATAHUB_TRACKING_TOPIC=DataHubUsageEvent_v1
 | 
						|
    - ELASTIC_CLIENT_HOST=elasticsearch
 | 
						|
    - ELASTIC_CLIENT_PORT=9200
 | 
						|
    hostname: datahub-frontend-react
 | 
						|
    image: ${DATAHUB_FRONTEND_IMAGE:-linkedin/datahub-frontend-react}:${DATAHUB_VERSION:-head}
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_FRONTEND_PORT:-9002}:9002
 | 
						|
    volumes:
 | 
						|
    - ${HOME}/.datahub/plugins:/etc/datahub/plugins
 | 
						|
  datahub-gms:
 | 
						|
    container_name: datahub-gms
 | 
						|
    depends_on:
 | 
						|
    - mysql
 | 
						|
    environment:
 | 
						|
    - DATAHUB_SERVER_TYPE=${DATAHUB_SERVER_TYPE:-quickstart}
 | 
						|
    - DATAHUB_TELEMETRY_ENABLED=${DATAHUB_TELEMETRY_ENABLED:-true}
 | 
						|
    - DATASET_ENABLE_SCSI=false
 | 
						|
    - EBEAN_DATASOURCE_USERNAME=datahub
 | 
						|
    - EBEAN_DATASOURCE_PASSWORD=datahub
 | 
						|
    - EBEAN_DATASOURCE_HOST=mysql:3306
 | 
						|
    - EBEAN_DATASOURCE_URL=jdbc:mysql://mysql:3306/datahub?verifyServerCertificate=false&useSSL=true&useUnicode=yes&characterEncoding=UTF-8
 | 
						|
    - EBEAN_DATASOURCE_DRIVER=com.mysql.jdbc.Driver
 | 
						|
    - KAFKA_BOOTSTRAP_SERVER=broker:29092
 | 
						|
    - KAFKA_SCHEMAREGISTRY_URL=http://schema-registry:8081
 | 
						|
    - ELASTICSEARCH_HOST=elasticsearch
 | 
						|
    - ELASTICSEARCH_PORT=9200
 | 
						|
    - GRAPH_SERVICE_IMPL=elasticsearch
 | 
						|
    - JAVA_OPTS=-Xms1g -Xmx1g
 | 
						|
    - ENTITY_REGISTRY_CONFIG_PATH=/datahub/datahub-gms/resources/entity-registry.yml
 | 
						|
    - MAE_CONSUMER_ENABLED=true
 | 
						|
    - MCE_CONSUMER_ENABLED=true
 | 
						|
    - PE_CONSUMER_ENABLED=true
 | 
						|
    - UI_INGESTION_ENABLED=true
 | 
						|
    - UI_INGESTION_DEFAULT_CLI_VERSION=0.8.42
 | 
						|
    - ENTITY_SERVICE_ENABLE_RETENTION=true
 | 
						|
    hostname: datahub-gms
 | 
						|
    image: ${DATAHUB_GMS_IMAGE:-linkedin/datahub-gms}:${DATAHUB_VERSION:-head}
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_GMS_PORT:-8080}:8080
 | 
						|
    volumes:
 | 
						|
    - ${HOME}/.datahub/plugins:/etc/datahub/plugins
 | 
						|
  elasticsearch:
 | 
						|
    container_name: elasticsearch
 | 
						|
    environment:
 | 
						|
    - discovery.type=single-node
 | 
						|
    - xpack.security.enabled=false
 | 
						|
    - ES_JAVA_OPTS=-Xms256m -Xmx256m -Dlog4j2.formatMsgNoLookups=true
 | 
						|
    healthcheck:
 | 
						|
      retries: 4
 | 
						|
      start_period: 2m
 | 
						|
      test:
 | 
						|
      - CMD-SHELL
 | 
						|
      - curl -sS --fail 'http://localhost:9200/_cluster/health?wait_for_status=yellow&timeout=0s'
 | 
						|
        || exit 1
 | 
						|
    hostname: elasticsearch
 | 
						|
    image: elasticsearch:7.9.3
 | 
						|
    mem_limit: 1g
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_ELASTIC_PORT:-9200}:9200
 | 
						|
    volumes:
 | 
						|
    - esdata:/usr/share/elasticsearch/data
 | 
						|
  elasticsearch-setup:
 | 
						|
    container_name: elasticsearch-setup
 | 
						|
    depends_on:
 | 
						|
    - elasticsearch
 | 
						|
    environment:
 | 
						|
    - ELASTICSEARCH_HOST=elasticsearch
 | 
						|
    - ELASTICSEARCH_PORT=9200
 | 
						|
    - ELASTICSEARCH_PROTOCOL=http
 | 
						|
    hostname: elasticsearch-setup
 | 
						|
    image: ${DATAHUB_ELASTIC_SETUP_IMAGE:-linkedin/datahub-elasticsearch-setup}:${DATAHUB_VERSION:-head}
 | 
						|
  kafka-setup:
 | 
						|
    container_name: kafka-setup
 | 
						|
    depends_on:
 | 
						|
    - broker
 | 
						|
    - schema-registry
 | 
						|
    environment:
 | 
						|
    - KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181
 | 
						|
    - KAFKA_BOOTSTRAP_SERVER=broker:29092
 | 
						|
    hostname: kafka-setup
 | 
						|
    image: ${DATAHUB_KAFKA_SETUP_IMAGE:-linkedin/datahub-kafka-setup}:${DATAHUB_VERSION:-head}
 | 
						|
  mysql:
 | 
						|
    command: --character-set-server=utf8mb4 --collation-server=utf8mb4_bin
 | 
						|
    container_name: mysql
 | 
						|
    environment:
 | 
						|
    - MYSQL_DATABASE=datahub
 | 
						|
    - MYSQL_USER=datahub
 | 
						|
    - MYSQL_PASSWORD=datahub
 | 
						|
    - MYSQL_ROOT_PASSWORD=datahub
 | 
						|
    hostname: mysql
 | 
						|
    image: mysql:5.7
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_MYSQL_PORT:-3306}:3306
 | 
						|
    volumes:
 | 
						|
    - ../mysql/init.sql:/docker-entrypoint-initdb.d/init.sql
 | 
						|
    - mysqldata:/var/lib/mysql
 | 
						|
  mysql-setup:
 | 
						|
    container_name: mysql-setup
 | 
						|
    depends_on:
 | 
						|
    - mysql
 | 
						|
    environment:
 | 
						|
    - MYSQL_HOST=mysql
 | 
						|
    - MYSQL_PORT=3306
 | 
						|
    - MYSQL_USERNAME=datahub
 | 
						|
    - MYSQL_PASSWORD=datahub
 | 
						|
    - DATAHUB_DB_NAME=datahub
 | 
						|
    hostname: mysql-setup
 | 
						|
    image: acryldata/datahub-mysql-setup:${DATAHUB_VERSION:-head}
 | 
						|
  schema-registry:
 | 
						|
    container_name: schema-registry
 | 
						|
    depends_on:
 | 
						|
    - zookeeper
 | 
						|
    - broker
 | 
						|
    environment:
 | 
						|
    - SCHEMA_REGISTRY_HOST_NAME=schemaregistry
 | 
						|
    - SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL=zookeeper:2181
 | 
						|
    hostname: schema-registry
 | 
						|
    image: confluentinc/cp-schema-registry:5.4.0
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_SCHEMA_REGISTRY_PORT:-8081}:8081
 | 
						|
  zookeeper:
 | 
						|
    container_name: zookeeper
 | 
						|
    environment:
 | 
						|
    - ZOOKEEPER_CLIENT_PORT=2181
 | 
						|
    - ZOOKEEPER_TICK_TIME=2000
 | 
						|
    hostname: zookeeper
 | 
						|
    image: confluentinc/cp-zookeeper:5.4.0
 | 
						|
    ports:
 | 
						|
    - ${DATAHUB_MAPPED_ZK_PORT:-2181}:2181
 | 
						|
    volumes:
 | 
						|
    - zkdata:/var/opt/zookeeper
 | 
						|
version: '2.3'
 | 
						|
volumes:
 | 
						|
  esdata: null
 | 
						|
  mysqldata: null
 | 
						|
  zkdata: null
 |