|
|
@@ -0,0 +1,99 @@
|
|
|
+
|
|
|
+version: "3"
|
|
|
+
|
|
|
+services:
|
|
|
+ im-mysql:
|
|
|
+ container_name: im-mysql
|
|
|
+ image: mysql:5.7
|
|
|
+ command: --default-authentication-plugin=mysql_native_password
|
|
|
+ restart: always
|
|
|
+ environment:
|
|
|
+ - TZ=Asia/Shanghai
|
|
|
+ - MYSQL_ROOT_PASSWORD=MYSQL_ROOT_USER_PASSWORD
|
|
|
+ - MYSQL_ROOT_HOST=%
|
|
|
+ - MYSQL_IM_USERNAME=MYSQL_USERNAME
|
|
|
+ - MYSQL_IM_PASSWORD=MYSQL_PASSWORD
|
|
|
+ volumes:
|
|
|
+ - deploydir/docker_volumes_data/mysql/data:/var/lib/mysql
|
|
|
+ - deploydir/docker_volumes_data/mysql/mysql.conf.d:/etc/mysql/mysql.conf.d
|
|
|
+
|
|
|
+ im-redis:
|
|
|
+ container_name: im-redis
|
|
|
+ image: redis:6-alpine
|
|
|
+ command: redis-server --requirepass REDIS_PASSWORD --appendonly yes --appendfsync everysec --auto-aof-rewrite-percentage 100 --auto-aof-rewrite-min-size 100mb
|
|
|
+ restart: always
|
|
|
+ # ports:
|
|
|
+ # - "127.0.0.1:6379:6379"
|
|
|
+ volumes:
|
|
|
+ - deploydir/docker_volumes_data/redis/data:/data
|
|
|
+
|
|
|
+ im-minio:
|
|
|
+ container_name: im-minio
|
|
|
+ image: bitnami/minio:2024
|
|
|
+ restart: always
|
|
|
+ # ports:
|
|
|
+ # - 9001:9001
|
|
|
+ # - 9002:9002
|
|
|
+ privileged: true
|
|
|
+ environment:
|
|
|
+ - MINIO_SKIP_CLIENT=yes
|
|
|
+ - MINIO_API_PORT_NUMBER=9001
|
|
|
+ - MINIO_CONSOLE_PORT_NUMBER=9002
|
|
|
+ # - MINIO_OPTS="--console-address :9002 --address :9001"
|
|
|
+ # - MINIO_DOMAIN=im_minio:9001
|
|
|
+ - MINIO_DATA_DIR=/data/minio
|
|
|
+ - MINIO_ROOT_USER=MINIO_USERNAME
|
|
|
+ - MINIO_ROOT_PASSWORD=MINIO_PASSWORD
|
|
|
+ volumes:
|
|
|
+ - deploydir/docker_volumes_data/minio/data:/data/minio
|
|
|
+
|
|
|
+ im-nginx:
|
|
|
+ container_name: im-nginx
|
|
|
+ image: openresty/openresty:1.21.4.1-0-alpine
|
|
|
+ restart: always
|
|
|
+ ports:
|
|
|
+ - PORT_NGINX_HTTP_OS:80
|
|
|
+ - PORT_NGINX_HTTPS_OS:443
|
|
|
+ - PORT_NGINX_WSS_OS:81
|
|
|
+ depends_on:
|
|
|
+ im-platform:
|
|
|
+ condition: service_started
|
|
|
+ im-server:
|
|
|
+ condition: service_started
|
|
|
+ volumes:
|
|
|
+ - deploydir/docker_volumes_data/nginx/data/conf:/etc/nginx ## configs
|
|
|
+ - deploydir/docker_volumes_data/nginx/data/certs:/etc/certs ## cert files
|
|
|
+ - deploydir/docker_volumes_data/nginx/data/web:/usr/share/nginx ## web
|
|
|
+
|
|
|
+ im-platform:
|
|
|
+ container_name: im-platform
|
|
|
+ image: im-platform:latest
|
|
|
+ restart: always
|
|
|
+ depends_on:
|
|
|
+ im-mysql:
|
|
|
+ condition: service_started
|
|
|
+ im-redis:
|
|
|
+ condition: service_started
|
|
|
+ im-minio:
|
|
|
+ condition: service_started
|
|
|
+ env_file:
|
|
|
+ - im-platform.env
|
|
|
+
|
|
|
+ im-server:
|
|
|
+ container_name: im-server
|
|
|
+ image: im-server:latest
|
|
|
+ restart: always
|
|
|
+ depends_on:
|
|
|
+ im-mysql:
|
|
|
+ condition: service_started
|
|
|
+ im-redis:
|
|
|
+ condition: service_started
|
|
|
+ im-minio:
|
|
|
+ condition: service_started
|
|
|
+ env_file:
|
|
|
+ - im-server.env
|
|
|
+networks:
|
|
|
+ default:
|
|
|
+ external:
|
|
|
+ name: im-network
|
|
|
+
|