version: "3.8" services: portainer: image: portainer/portainer:1.24.2 restart: always ports: - ${PORTAINER_PORT}:9000 volumes: - ${DOCKER_SOCK}:/var/run/docker.sock - ${PORTAINER_DATA}:/data redis: image: redis:6.2.4-alpine3.13 restart: always environment: - TZ=${TZ} ports: - ${REDIS_PORT}:6379 volumes: - ./conf/redis/redis.conf:/usr/local/etc/redis/redis.conf - ${REDIS_DATA}:/data mariadb: image: mariadb:10.5.10 restart: always environment: - TZ=${TZ} - MYSQL_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD} command: --default-authentication-plugin=mysql_native_password ports: - ${MARIADB_PORT}:3306 volumes: - ./conf/mariadb/my.cnf:/etc/mysql/conf.d/my.cnf:ro - ./conf/mariadb/initdb.d:/docker-entrypoint-initdb.d - ${MARIADB_DATA}:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] interval: 10s timeout: 10s retries: 10 openresty: image: openresty/openresty:1.19.3.1-8-alpine restart: always ports: - ${NGINX_HTTP_PORT}:80 - ${NGINX_SSL_PORT}:443 volumes: - ./conf/openresty/nginx.conf:/usr/local/openresty/nginx/conf/nginx.conf - ./conf/openresty/rsa.lua:/usr/local/openresty/lualib/rsa.lua - ${NGINX_LOG}:/usr/local/openresty/nginx/logs kafka: image: 76527413/kafka:2.8.0 restart: always volumes: - ./conf/kafka/server.properties:/opt/kafka/config/kraft/server.properties - ${KAFKA_DATA}:/tmp/kraft-combined-logs - ${KAFKA_LOG}:/opt/kafka/logs ports: - 9092:9092 - 9093:9093 healthcheck: test: ["CMD", "nc", "-vz", "localhost", "9092"] interval: 10s timeout: 10s retries: 10 elasticsearch: image: elasticsearch:7.12.0 healthcheck: test: ["CMD", "nc", "-vz", "localhost", "9200"] interval: 10s timeout: 10s retries: 10 restart: always environment: - ES_JAVA_OPTS=-Xms512m -Xmx512m - discovery.type=single-node - http.cors.enabled=true - http.cors.allow-origin=* ports: - 9200:9200 - 9300:9300 volumes: #chmod 777 elasticsearch - ${ELASTICSEARCH_DATA}:/usr/share/elasticsearch/data # greenplum: # image: 76527413/greenplum:6.16.2 # restart: always # hostname: greenplum_singlenode # environment: # - DATABASE=exampledb # ports: # - 5432:5432 # volumes: # - ${GREENPLUM_DATA}:/data # - ${GREENPLUM_LOG}:/home/gpadmin/gpAdminLogs mysql: image: mysql:5.7.34 restart: always environment: - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} ports: - 3306:3306 volumes: - ./conf/mysql/my.cnf:/etc/mysql/conf.d/my.cnf - ./conf/mysql/initdb.d:/docker-entrypoint-initdb.d - ${MYSQL_DATA}:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] interval: 10s timeout: 10s retries: 10 nacos: image: nacos/nacos-server:2.0.1 environment: - PREFER_HOST_MODE=nacos - MODE=standalone - SPRING_DATASOURCE_PLATFORM=mysql - MYSQL_SERVICE_HOST=mysql - MYSQL_SERVICE_DB_NAME=nacos - MYSQL_SERVICE_PORT=3306 - MYSQL_SERVICE_USER=root - MYSQL_SERVICE_PASSWORD=${MYSQL_ROOT_PASSWORD} - MYSQL_SERVICE_DB_PARAM=characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false volumes: - ${NACOS_LOG}:/home/nacos/logs ports: - 8848:8848 - 9848:9848 depends_on: - mysql