背景
DataHub通常使用docker-compose安装部署,但安装好后,查看访问日志,发现日志的时间早了8个小时,怎么办?
本文针对此问题,提供解决方案。
解决方案
解决步骤
- 在 docker-compose.yml中的每一个容器中,增加如下内容:
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
volumes:
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
- 停止并删除镜像
docker-compose \
-p datahub \
-f datahub-0.8.26/docker/quickstart/docker-compose-without-neo4j.quickstart.yml \
-f datahub-0.8.26/docker/monitoring/docker-compose.monitoring.yml \
down
- 创建并启动镜像
docker-compose \
-p datahub \
-f datahub-0.8.26/docker/quickstart/docker-compose-without-neo4j.quickstart.yml \
-f datahub-0.8.26/docker/monitoring/docker-compose.monitoring.yml \
up -d --remove-orphans
验证
进入容器,查看时间,验证时间是否正常
docker logs datahub-gms
或
docker logs -n 100 datahub-gms
附录
docker-compose-without-neo4j.quickstart.yml 文件内容
networks:
default:
name: datahub_network
services:
broker:
container_name: broker
depends_on:
- zookeeper
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- 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=-Xms2048m -Xmx2048m
hostname: broker
image: confluentinc/cp-kafka:5.4.0
ports:
- 29092:29092
- 9092:9092
volumes:
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
datahub-actions:
depends_on:
- datahub-gms
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- GMS_HOST=datahub-gms
- 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: public.ecr.aws/datahub/acryl-datahub-actions:${ACTIONS_VERSION:-head}
volumes:
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
datahub-frontend-react:
container_name: datahub-frontend-react
depends_on:
- datahub-gms
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- 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=-Xms1024m -Xmx1024m -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: linkedin/datahub-frontend-react:${DATAHUB_VERSION:-head}
ports:
- 9002:9002
volumes:
- /data1/datahub/datahub-frontend-assets-c.jar:/datahub-frontend/lib/datahub-frontend-assets.jar
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
datahub-gms:
container_name: datahub-gms
depends_on:
- mysql
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- 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=-Xms4g -Xmx4g
- ENTITY_REGISTRY_CONFIG_PATH=/datahub/datahub-gms/resources/entity-registry.yml
- MAE_CONSUMER_ENABLED=true
- MCE_CONSUMER_ENABLED=true
hostname: datahub-gms
image: linkedin/datahub-gms:${DATAHUB_VERSION:-head}
ports:
- 8080:8080
volumes:
- ${HOME}/.datahub/plugins:/etc/datahub/plugins
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
elasticsearch:
container_name: elasticsearch
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- discovery.type=single-node
- xpack.security.enabled=false
- ES_JAVA_OPTS=-Xms8192m -Xmx8192m -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: 16g
ports:
- 9200:9200
volumes:
- esdata:/usr/share/elasticsearch/data
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
elasticsearch-setup:
container_name: elasticsearch-setup
depends_on:
- elasticsearch
environment:
- ELASTICSEARCH_HOST=elasticsearch
- ELASTICSEARCH_PORT=9200
- ELASTICSEARCH_PROTOCOL=http
hostname: elasticsearch-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: linkedin/datahub-kafka-setup:${DATAHUB_VERSION:-head}
mysql:
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_bin
container_name: mysql
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- MYSQL_DATABASE=datahub
- MYSQL_USER=datahub
- MYSQL_PASSWORD=datahub
- MYSQL_ROOT_PASSWORD=datahub
hostname: mysql
image: mysql:5.7
ports:
- 3306:3306
volumes:
- ../mysql/init.sql:/docker-entrypoint-initdb.d/init.sql
- mysqldata:/var/lib/mysql
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
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:head
schema-registry:
container_name: schema-registry
depends_on:
- zookeeper
- broker
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- SCHEMA_REGISTRY_HOST_NAME=schemaregistry
- SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL=zookeeper:2181
hostname: schema-registry
image: confluentinc/cp-schema-registry:5.4.0
ports:
- 8081:8081
volumes:
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
zookeeper:
container_name: zookeeper
environment:
- LANG=zh_CN.UTF-8
- TZ=Asia/Shanghai
- ZOOKEEPER_CLIENT_PORT=2181
- ZOOKEEPER_TICK_TIME=2000
hostname: zookeeper
image: confluentinc/cp-zookeeper:5.4.0
ports:
- 2181:2181
volumes:
- zkdata:/var/opt/zookeeper
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
version: '2.3'
volumes:
esdata: null
mysqldata: null
zkdata: null