Files
weiyu/starter/docker-compose.yaml
jack ning b5be71837e update
2025-01-17 13:06:13 +08:00

112 lines
3.7 KiB
YAML

services:
bytedesk-mysql:
image: mysql:latest
container_name: mysql-bytedesk
environment:
MYSQL_DATABASE: bytedesk_im
MYSQL_ROOT_PASSWORD: r8FqfdbWUaN3
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
networks:
- bytedesk-network
bytedesk-redis:
image: redis/redis-stack-server:latest
container_name: redis-bytedesk
ports:
- "6379:6379"
environment:
- REDIS_ARGS=--requirepass qfRxz3tVT8Nh
volumes:
- redis_data:/data
networks:
- bytedesk-network
bytedesk:
# image: bytedesk/bytedesk:latest # hub.docker.com enterprise
# image: bytedesk/bytedesk-ce:latest # hub.docker.com community
image: registry.cn-hangzhou.aliyuncs.com/bytedesk/bytedesk:latest # aliyun enterprise
# mage: registry.cn-hangzhou.aliyuncs.com/bytedesk/bytedesk-ce:latest # aliyun community
container_name: bytedesk
depends_on:
- bytedesk-mysql
- bytedesk-redis
environment:
# db config
SPRING_DATASOURCE_URL: jdbc:mysql://mysql-bytedesk:3306/bytedesk_im
SPRING_DATASOURCE_USERNAME: root
SPRING_DATASOURCE_PASSWORD: r8FqfdbWUaN3
SPRING_JPA_HIBERNATE_DDL_AUTO: update
# redis config
SPRING_DATA_REDIS_HOST: redis-bytedesk
SPRING_DATA_REDIS_PORT: 6379
SPRING_DATA_REDIS_PASSWORD: qfRxz3tVT8Nh
SPRING_DATA_REDIS_DATABASE: 0
# Admin config
BYTEDESK_ADMIN_EMAIL: admin@email.com
BYTEDESK_ADMIN_PASSWORD: admin
BYTEDESK_ADMIN_PASSWORD_DEFAULT: 123456
BYTEDESK_ADMIN_NICKNAME: SuperAdmin
BYTEDESK_ADMIN_MOBILE: 13345678000
BYTEDESK_ADMIN_MOBILE_WHITELIST: 18888888000,18888888001,18888888002,18888888003,18888888004,18888888005
BYTEDESK_ADMIN_EMAIL_WHITELIST: 100@email.com,101@email.com,102@email.com,103@email.com,104@email.com,105@email.com
BYTEDESK_ADMIN_VALIDATE_CODE: 123456
# Organization config
BYTEDESK_ORGANIZATION_NAME: MyCompany
BYTEDESK_ORGANIZATION_CODE: bytedesk
# Features config
BYTEDESK_FEATURES_JAVA_AI: false
BYTEDESK_FEATURES_PYTHON_AI: true
BYTEDESK_FEATURES_EMAIL_TYPE: javamail
BYTEDESK_FEATURES_ENABLE_REGISTRATION: false
BYTEDESK_FEATURES_AVATAR_URL: http://127.0.0.1:9003
# CORS config
# BYTEDESK_CORS_ALLOWED_ORIGINS: *
# JWT config
BYTEDESK_JWT_SECRET_KEY: 1dfaf8d004207b628a9a6b859c429f49a9a7ead9fd8161c1e60847aeef06dbd2
BYTEDESK_JWT_EXPIRATION: 2592000000
BYTEDESK_JWT_REFRESH_TOKEN_EXPIRATION: 5184000000
# Cache config
BYTEDESK_CACHE_LEVEL: 0
BYTEDESK_CACHE_PREFIX: bytedeskim
BYTEDESK_CACHE_REDIS_STREAM_KEY: bytedeskim:stream
# Upload config
BYTEDESK_UPLOAD_TYPE: local
BYTEDESK_UPLOAD_DIR: /app/uploads
BYTEDESK_UPLOAD_URL: http://localhost:9003
# Knowledge base config
BYTEDESK_KBASE_THEME: default
BYTEDESK_KBASE_HTML_PATH: helpcenter
BYTEDESK_KBASE_API_URL: http://127.0.0.1:9003
# Socket config
BYTEDESK_SOCKET_HOST: 0.0.0.0
BYTEDESK_SOCKET_WEBSOCKET_PORT: 9885
BYTEDESK_SOCKET_LEAK_DETECTOR_LEVEL: SIMPLE
BYTEDESK_SOCKET_PARENT_EVENT_LOOP_GROUP_THREAD_COUNT: 1
BYTEDESK_SOCKET_CHILD_EVENT_LOOP_GROUP_THREAD_COUNT: 8
BYTEDESK_SOCKET_MAX_PAYLOAD_SIZE: 10240
# Cluster config
BYTEDESK_CLUSTER_ENABLED: false
# Push config
# BYTEDESK_PUSH_APNS_BUNDLE_ID: com.kefux.im
# BYTEDESK_PUSH_APNS_P12_URL: 123.p12
# BYTEDESK_PUSH_APNS_P12_PASSWORD: 123456
ports:
- 9003:9003
- 9885:9885
volumes:
- upload_data:/app/uploads
networks:
- bytedesk-network
volumes:
mysql_data:
redis_data:
upload_data:
networks:
bytedesk-network:
driver: bridge