You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
1.9 KiB
YAML

version: "3.4"
services:
mysql:
container_name: iot-mysql
image: mysql:8
restart: unless-stopped
tty: true
ports:
- "3306:3306"
environment:
MYSQL_DATABASE: ${MYSQL_DATABASE:-iotkit}
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-123456}
volumes:
- mysql:/var/lib/mysql/
redis:
container_name: iot-redis
image: redis:6-alpine
restart: unless-stopped
ports:
- "6379:6379"
volumes:
- redis:/data
td-engine:
container_name: iot-td-engine
image: taosdata/tdengine:latest
restart: unless-stopped
volumes:
- iot-td-engine:/var/lib/tdengine/
server:
container_name: iot-server
build:
context: .
image: iot-server
restart: unless-stopped
ports:
- "8089:8086"
- "8088:8082"
environment:
# https://github.com/polovyivan/docker-pass-configs-to-container
SPRING_PROFILES_ACTIVE: mysql
SPRING_DATASOURCE_URL: ${MASTER_DATASOURCE_URL:-jdbc:mysql://iot-mysql:3306/iotkit?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true}
SPRING_DATASOURCE_USERNAME: ${MASTER_DATASOURCE_USERNAME:-root}
SPRING_DATASOURCE_PASSWORD: ${MASTER_DATASOURCE_PASSWORD:-123456}
SPRING_REDIS_HOST: ${REDIS_HOST:-iot-redis}
SPRING_REDIS_PORT: 6379
SPRING_TD_DATASOURCE_URL: jdbc:TAOS-RS://iot-td-engine:6041/iotkit?timezone=UTC-8&charset=UTF-8&locale=en_US.UTF-8
SPRING_TD_DATASOURCE_USERNAME: root
SPRING_TD_DATASOURCE_PASSWORD: taosdata
JAVA_OPTS:
${JAVA_OPTS:-
-Xms512m
-Xmx512m
-Djava.security.egd=file:/dev/./urandom
}
volumes:
- ./data/dist:/usr/share/nginx/html
depends_on:
- redis
- mysql
- td-engine
volumes:
mysql:
driver: local
redis:
driver: local
iot-td-engine:
driver: local