version: "3.7" networks: openim: external: true services: mysql: networks: - openim image: mysql:5.7 # ports: # #- 13306:3306 # - 23306:33060 container_name: openim_mysql volumes: - ./components/mysql/data:/var/lib/mysql - /etc/localtime:/etc/localtime environment: MYSQL_ROOT_PASSWORD: openIM restart: always mongodb: networks: - openim image: mongo:4.4.5-bionic # ports: # - 37017:27017 container_name: openim_mongo volumes: - ./components/mongodb/data/db:/data/db - ./components/mongodb/data/logs:/data/logs - ./components/mongodb/data/conf:/etc/mongo environment: TZ: Asia/Shanghai # - MONGO_INITDB_ROOT_USERNAME=openIM # - MONGO_INITDB_ROOT_PASSWORD=openIM restart: always redis: networks: - openim image: redis:6.2.4-alpine # ports: # - 16379:6379 container_name: openim_redis volumes: - ./components/redis/data:/data #redis config file #- ./components/redis/config/redis.conf:/usr/local/redis/config/redis.conf environment: TZ: Asia/Shanghai restart: always sysctls: net.core.somaxconn: 1024 command: redis-server --requirepass openIM --appendonly yes zookeeper: networks: - openim image: wurstmeister/zookeeper # ports: # - 2181:2181 container_name: openim_zookeeper volumes: - /etc/localtime:/etc/localtime environment: TZ: Asia/Shanghai restart: always kafka: networks: - openim image: wurstmeister/kafka container_name: openim_kafka restart: always environment: TZ: Asia/Shanghai KAFKA_BROKER_ID: 0 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092 depends_on: - zookeeper etcd: networks: - openim image: quay.io/coreos/etcd # ports: # - 2379:2379 # - 2380:2380 container_name: openim_etcd volumes: - /etc/timezone:/etc/timezone - /etc/localtime:/etc/localtime environment: ETCDCTL_API: 3 restart: always command: /usr/local/bin/etcd --name etcd0 --data-dir /etcd-data --listen-client-urls http://0.0.0.0:2379 --advertise-client-urls http://0.0.0.0:2379 --listen-peer-urls http://0.0.0.0:2380 --initial-advertise-peer-urls http://0.0.0.0:2380 --initial-cluster etcd0=http://0.0.0.0:2380 --initial-cluster-token tkn --initial-cluster-state new