version: '3' services: tyapi_etcd: image: bitnami/etcd container_name: tyapi_etcd environment: - TZ=Asia/Shanghai - ALLOW_NONE_AUTHENTICATION=yes - ETCD_ADVERTISE_CLIENT_URLS=http://tyapi_etcd:2379 - ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379 networks: - tyapi_network restart: always tyapi_etcdManage: image: evildecay/etcdkeeper container_name: tyapi_etcdManage environment: - TZ=Asia/Shanghai depends_on: - tyapi_etcd networks: - tyapi_network restart: always tyapi_zookeeper: image: wurstmeister/zookeeper container_name: tyapi_zookeeper environment: - TZ=Asia/Shanghai volumes: - zookeeper_data:/data - zookeeper_datalog:/datalog networks: - tyapi_network restart: always tyapi_kafka: image: wurstmeister/kafka container_name: tyapi_kafka environment: TZ: Asia/Shanghai KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://tyapi_kafka:9092 KAFKA_ZOOKEEPER_CONNECT: tyapi_zookeeper:2181 volumes: - /var/run/docker.sock:/var/run/docker.sock networks: - tyapi_network restart: always tyapi_redis: image: redis:7.4.0 container_name: tyapi_redis environment: - TZ=Asia/Shanghai ports: - "11002:6379" networks: - tyapi_network restart: always tyapi_mysql: image: mysql:8.0.34 container_name: tyapi_mysql environment: - TZ=Asia/Shanghai - MYSQL_ROOT_PASSWORD=rootpassword - MYSQL_DATABASE=tianyuanapi - MYSQL_USER=tianyuanapi - MYSQL_PASSWORD=g3h98u0291j ports: - "11001:3306" volumes: - mysql_data:/var/lib/mysql networks: - tyapi_network - 1panel-network restart: always tyapi_gateway: container_name: tyapi_gateway build: context: . dockerfile: ./apps/gateway/Dockerfile ports: - "10001:10001" environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_etcd - tyapi_redis - tyapi_mysql - tyapi_user - tyapi_sentinel networks: - tyapi_network restart: always tyapi_admin: container_name: tyapi_admin build: context: . dockerfile: ./apps/admin/Dockerfile ports: - "10002:10002" environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_etcd - tyapi_redis - tyapi_mysql - tyapi_user - tyapi_sentinel networks: - tyapi_network restart: always tyapi_api: container_name: tyapi_api build: context: . dockerfile: ./apps/api/Dockerfile ports: - "10003:10003" environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_etcd - tyapi_redis - tyapi_mysql - tyapi_user - tyapi_sentinel - tyapi_mqs - tyapi_kafka networks: - tyapi_network restart: always tyapi_index: container_name: tyapi_index build: context: . dockerfile: ./apps/index/Dockerfile ports: - "10004:10004" environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_etcd - tyapi_sentinel networks: - tyapi_network restart: always tyapi_mqs: container_name: tyapi_mqs build: context: . dockerfile: ./apps/mqs/Dockerfile environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_kafka - tyapi_etcd - tyapi_redis - tyapi_user - tyapi_sentinel networks: - tyapi_network restart: always tyapi_sentinel: container_name: tyapi_sentinel build: context: . dockerfile: ./apps/sentinel/Dockerfile environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_redis - tyapi_mysql - tyapi_etcd networks: - tyapi_network restart: always tyapi_user: container_name: tyapi_user build: context: . dockerfile: ./apps/user/Dockerfile environment: - TZ=Asia/Shanghai - ENV=production depends_on: - tyapi_mysql - tyapi_redis - tyapi_etcd networks: - tyapi_network restart: always volumes: mysql_data: driver: local zookeeper_data: driver: local zookeeper_datalog: driver: local networks: tyapi_network: driver: bridge 1panel-network: external: true