From 0cf2fb61a7c083cfbfab41f789bb87601a751507 Mon Sep 17 00:00:00 2001 From: richjohnrambo Date: Mon, 14 Sep 2026 23:52:00 +0800 Subject: [PATCH] fix: restore docker middleware env config --- docker/tinode/config.template | 92 +++++++++++++++++------------------ docker/tinode/entrypoint.sh | 8 ++- 2 files changed, 53 insertions(+), 47 deletions(-) diff --git a/docker/tinode/config.template b/docker/tinode/config.template index 2adcf7d..acc70db 100644 --- a/docker/tinode/config.template +++ b/docker/tinode/config.template @@ -15,7 +15,7 @@ "default_country_code": "$DEFAULT_COUNTRY_CODE", "media": { - "use_handler": "sys_config", + "use_handler": "$MEDIA_HANDLER", "max_size": 33554432, "gc_period": 60, "gc_block_size": 100, @@ -101,56 +101,56 @@ } }, "redis": { - "addr": "redis.118im.com:30637", - "username": "", - "password": "HMTJzkm.h>Y+E9ep", - "db": 0, - "key_prefix": "im", - "dial_timeout_ms": 2000, - "read_timeout_ms": 2000, - "write_timeout_ms": 2000, - "pending_ttl_seconds": 300, - "done_ttl_seconds": 86400, - "failed_ttl_seconds": 600, - "hot_message_ttl_seconds": 86400, - "presence_ttl_seconds": 120, - "cache_ttl_seconds": 300, - "short_state_ttl_seconds": 600, - "group_fanout_enabled": true + "addr": "$REDIS_ADDR", + "username": "$REDIS_USERNAME", + "password": "$REDIS_PASSWORD", + "db": $REDIS_DB, + "key_prefix": "$REDIS_KEY_PREFIX", + "dial_timeout_ms": $REDIS_DIAL_TIMEOUT_MS, + "read_timeout_ms": $REDIS_READ_TIMEOUT_MS, + "write_timeout_ms": $REDIS_WRITE_TIMEOUT_MS, + "pending_ttl_seconds": $REDIS_PENDING_TTL_SECONDS, + "done_ttl_seconds": $REDIS_DONE_TTL_SECONDS, + "failed_ttl_seconds": $REDIS_FAILED_TTL_SECONDS, + "hot_message_ttl_seconds": $REDIS_HOT_MESSAGE_TTL_SECONDS, + "presence_ttl_seconds": $REDIS_PRESENCE_TTL_SECONDS, + "cache_ttl_seconds": $REDIS_CACHE_TTL_SECONDS, + "short_state_ttl_seconds": $REDIS_SHORT_STATE_TTL_SECONDS, + "group_fanout_enabled": $REDIS_GROUP_FANOUT_ENABLED } }, "kafka": { - "enabled": true, - "brokers": ["kafka.118im.com:30835"], - "client_id": "im-server", - "consumer_group": "im-server", - "dial_timeout_ms": 3000, - "write_timeout_ms": 3000, - "read_timeout_ms": 3000, - "batch_timeout_ms": 10, - "required_acks": 1, - "allow_auto_topic_creation": false, - "tls_enabled": false, - "sasl_enabled": true, - "sasl_mechanism": "SCRAM-SHA-512", - "sasl_username": "kafka-external", - "sasl_password": "gr58tNnlZOVGW3AmMbL2", - "max_retry_count": 3, - "retry_backoff_ms": [10000, 30000, 60000, 300000, 900000], - "dead_letter_retention_seconds": 7776000, + "enabled": $KAFKA_ENABLED, + "brokers": $KAFKA_BROKERS_JSON, + "client_id": "$KAFKA_CLIENT_ID", + "consumer_group": "$KAFKA_CONSUMER_GROUP", + "dial_timeout_ms": $KAFKA_DIAL_TIMEOUT_MS, + "write_timeout_ms": $KAFKA_WRITE_TIMEOUT_MS, + "read_timeout_ms": $KAFKA_READ_TIMEOUT_MS, + "batch_timeout_ms": $KAFKA_BATCH_TIMEOUT_MS, + "required_acks": $KAFKA_REQUIRED_ACKS, + "allow_auto_topic_creation": $KAFKA_ALLOW_AUTO_TOPIC_CREATION, + "tls_enabled": $KAFKA_TLS_ENABLED, + "sasl_enabled": $KAFKA_SASL_ENABLED, + "sasl_mechanism": "$KAFKA_SASL_MECHANISM", + "sasl_username": "$KAFKA_SASL_USERNAME", + "sasl_password": "$KAFKA_SASL_PASSWORD", + "max_retry_count": $KAFKA_MAX_RETRY_COUNT, + "retry_backoff_ms": $KAFKA_RETRY_BACKOFF_MS, + "dead_letter_retention_seconds": $KAFKA_DEAD_LETTER_RETENTION_SECONDS, "topics": { - "admin_command": "im.admin.command", - "admin_command_result": "im.admin.command.result", - "config_event": "im.config.event", - "business_event": "im.business.event", - "message_persist": "im.message.persist", - "group_message_persist": "im.group.message.persist", - "message_push": "im.message.push", - "file_security": "im.file.security", - "cache_invalidate": "im.cache.invalidate", - "audit_event": "im.audit.event", - "dead_letter": "im.dead.letter" + "admin_command": "$KAFKA_TOPIC_ADMIN_COMMAND", + "admin_command_result": "$KAFKA_TOPIC_ADMIN_COMMAND_RESULT", + "config_event": "$KAFKA_TOPIC_CONFIG_EVENT", + "business_event": "$KAFKA_TOPIC_BUSINESS_EVENT", + "message_persist": "$KAFKA_TOPIC_MESSAGE_PERSIST", + "group_message_persist": "$KAFKA_TOPIC_GROUP_MESSAGE_PERSIST", + "message_push": "$KAFKA_TOPIC_MESSAGE_PUSH", + "file_security": "$KAFKA_TOPIC_FILE_SECURITY", + "cache_invalidate": "$KAFKA_TOPIC_CACHE_INVALIDATE", + "audit_event": "$KAFKA_TOPIC_AUDIT_EVENT", + "dead_letter": "$KAFKA_TOPIC_DEAD_LETTER" } }, "internal_api": { diff --git a/docker/tinode/entrypoint.sh b/docker/tinode/entrypoint.sh index 5b02932..661f7cd 100644 --- a/docker/tinode/entrypoint.sh +++ b/docker/tinode/entrypoint.sh @@ -185,5 +185,11 @@ fi args=("--config=${CONFIG}" "--static_data=$STATIC_DIR" "--cluster_self=$CLUSTER_SELF" "--pprof_url=$PPROF_URL") -# Run the tinode server. +# Run the tinode server. Mirror the captured stderr to container logs on exit so +# CrashLoopBackOff pods expose the actual startup failure via kubectl logs. ./tinode "${args[@]}" 2>> /var/log/tinode.log +status=$? +if [ "$status" -ne 0 ] && [ -s /var/log/tinode.log ]; then + tail -200 /var/log/tinode.log >&2 +fi +exit "$status"