mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-10-26 21:22:16 +08:00
fix: update slack link
Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
This commit is contained in:
parent
35e4b7d1fd
commit
5d6f605031
76
.env
76
.env
@ -1,19 +1,65 @@
|
|||||||
# Copyright © 2023 OpenIM. All rights reserved.
|
# The following is automatically generated
|
||||||
|
# Use `make init` OR `./scripts/init-config.sh`
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# ================= Basic Configuration ===================
|
||||||
# you may not use this file except in compliance with the License.
|
# Endpoint for the MinIO object storage service
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
USER=root
|
|
||||||
PASSWORD=openIM123
|
|
||||||
MINIO_ENDPOINT=http://127.0.0.1:10005
|
MINIO_ENDPOINT=http://127.0.0.1:10005
|
||||||
|
|
||||||
|
# Base URL for the application programming interface (API)
|
||||||
API_URL=http://127.0.0.1:10002
|
API_URL=http://127.0.0.1:10002
|
||||||
|
|
||||||
|
# Directory path for storing data files or related information
|
||||||
DATA_DIR=./
|
DATA_DIR=./
|
||||||
|
|
||||||
|
|
||||||
|
# ============ Component Extension Configuration ==========
|
||||||
|
# Address or hostname for the ZooKeeper service (often used in distributed systems for maintaining configuration information)
|
||||||
|
ZOOKEEPER_ADDRESS=127.0.0.1
|
||||||
|
|
||||||
|
# Port on which MySQL database service is running
|
||||||
|
MYSQL_PORT=13306
|
||||||
|
|
||||||
|
# Password to authenticate with the MySQL database service
|
||||||
|
MYSQL_PASSWORD=openIM123
|
||||||
|
|
||||||
|
# Port on which MongoDB service is running
|
||||||
|
MONGO_PORT=37017
|
||||||
|
|
||||||
|
# Username to authenticate with the MongoDB service
|
||||||
|
MONGO_USERNAME=root
|
||||||
|
|
||||||
|
# Password to authenticate with the MongoDB service
|
||||||
|
MONGO_PASSWORD=openIM123
|
||||||
|
|
||||||
|
# Name of the database in MongoDB to be used
|
||||||
|
MONGO_DATABASE=openIM_v3
|
||||||
|
|
||||||
|
# Port on which Redis in-memory data structure store is running
|
||||||
|
REDIS_PORT=16379
|
||||||
|
|
||||||
|
# Password to authenticate with the Redis service
|
||||||
|
REDIS_PASSWORD=openIM123
|
||||||
|
|
||||||
|
# Port on which Kafka distributed streaming platform is running
|
||||||
|
KAFKA_PORT=9092
|
||||||
|
|
||||||
|
# Address or hostname for the Kafka service
|
||||||
|
KAFKA_ADDR=127.0.0.1
|
||||||
|
|
||||||
|
# Topic in Kafka for storing the latest messages in Redis
|
||||||
|
KAFKA_LATESTMSG_REDIS_TOPIC=latestMsgToRedis
|
||||||
|
|
||||||
|
# Topic in Kafka for pushing messages (e.g. notifications or updates)
|
||||||
|
KAFKA_MSG_PUSH_TOPIC=msgToPush
|
||||||
|
|
||||||
|
# Topic in Kafka for storing offline messages in MongoDB
|
||||||
|
KAFKA_OFFLINEMSG_MONGO_TOPIC=offlineMsgToMongoMysql
|
||||||
|
|
||||||
|
# Port on which MinIO object storage service is running
|
||||||
|
MINIO_PORT=10005
|
||||||
|
|
||||||
|
# Access key to authenticate with the MinIO service
|
||||||
|
MINIO_ACCESS_KEY=root
|
||||||
|
|
||||||
|
# Secret key corresponding to the access key for MinIO authentication
|
||||||
|
MINIO_SECRET_KEY=openIM123
|
||||||
|
|||||||
@ -363,6 +363,8 @@ builds:
|
|||||||
- "6"
|
- "6"
|
||||||
- "7"
|
- "7"
|
||||||
|
|
||||||
|
# TODO:Need a script, such as the init - release to help binary to find the right directory
|
||||||
|
# ,which can be compiled binary
|
||||||
archives:
|
archives:
|
||||||
- format: tar.gz
|
- format: tar.gz
|
||||||
# this name template makes the OS and Arch compatible with the results of uname.
|
# this name template makes the OS and Arch compatible with the results of uname.
|
||||||
@ -375,18 +377,24 @@ archives:
|
|||||||
{{- if .Arm }}v{{ .Arm }}{{ end }}
|
{{- if .Arm }}v{{ .Arm }}{{ end }}
|
||||||
# use zip for windows archives
|
# use zip for windows archives
|
||||||
files:
|
files:
|
||||||
- LICENSE
|
|
||||||
- README.md
|
|
||||||
- README-zh_CN.md
|
|
||||||
- CODE_OF_CONDUCT.md
|
|
||||||
- CHANGELOG/*
|
- CHANGELOG/*
|
||||||
|
- deployment/*
|
||||||
|
- config/*
|
||||||
|
- build/*
|
||||||
- scripts/*
|
- scripts/*
|
||||||
- Makefile
|
- Makefile
|
||||||
- CONTRIBUTING.md
|
- install.sh
|
||||||
- docs/*
|
- docs/*
|
||||||
- src: "*.md"
|
- src: "*.md"
|
||||||
dst: docs
|
dst: docs
|
||||||
|
|
||||||
|
# Set this to true if you want all files in the archive to be in a single directory.
|
||||||
|
# If set to true and you extract the archive 'goreleaser_Linux_arm64.tar.gz',
|
||||||
|
# you'll get a folder 'goreleaser_Linux_arm64'.
|
||||||
|
# If set to false, all files are extracted separately.
|
||||||
|
# You can also set it to a custom folder name (templating is supported).
|
||||||
|
wrap_in_directory: true
|
||||||
|
|
||||||
# Strip parent folders when adding files to the archive.
|
# Strip parent folders when adding files to the archive.
|
||||||
strip_parent: true
|
strip_parent: true
|
||||||
|
|
||||||
|
|||||||
@ -1,19 +1,68 @@
|
|||||||
# Copyright © 2023 OpenIM. All rights reserved.
|
# ================= Basic Configuration ===================
|
||||||
#
|
# User for authentication or system operations
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
|
|
||||||
USER=${USER}
|
USER=${USER}
|
||||||
|
|
||||||
|
# Password associated with the specified user for authentication
|
||||||
PASSWORD=${PASSWORD}
|
PASSWORD=${PASSWORD}
|
||||||
|
|
||||||
|
# Endpoint for the MinIO object storage service
|
||||||
MINIO_ENDPOINT=${MINIO_ENDPOINT}
|
MINIO_ENDPOINT=${MINIO_ENDPOINT}
|
||||||
|
|
||||||
|
# Base URL for the application programming interface (API)
|
||||||
API_URL=${API_URL}
|
API_URL=${API_URL}
|
||||||
|
|
||||||
|
# Directory path for storing data files or related information
|
||||||
DATA_DIR=${DATA_DIR}
|
DATA_DIR=${DATA_DIR}
|
||||||
|
|
||||||
|
|
||||||
|
# ============ Component Extension Configuration ==========
|
||||||
|
# Address or hostname for the ZooKeeper service (often used in distributed systems for maintaining configuration information)
|
||||||
|
ZOOKEEPER_ADDRESS=${ZOOKEEPER_ADDRESS}
|
||||||
|
|
||||||
|
# Port on which MySQL database service is running
|
||||||
|
MYSQL_PORT=${MYSQL_PORT}
|
||||||
|
|
||||||
|
# Password to authenticate with the MySQL database service
|
||||||
|
MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||||
|
|
||||||
|
# Port on which MongoDB service is running
|
||||||
|
MONGO_PORT=${MONGO_PORT}
|
||||||
|
|
||||||
|
# Username to authenticate with the MongoDB service
|
||||||
|
MONGO_USERNAME=${MONGO_USERNAME}
|
||||||
|
|
||||||
|
# Password to authenticate with the MongoDB service
|
||||||
|
MONGO_PASSWORD=${MONGO_PASSWORD}
|
||||||
|
|
||||||
|
# Name of the database in MongoDB to be used
|
||||||
|
MONGO_DATABASE=${MONGO_DATABASE}
|
||||||
|
|
||||||
|
# Port on which Redis in-memory data structure store is running
|
||||||
|
REDIS_PORT=${REDIS_PORT}
|
||||||
|
|
||||||
|
# Password to authenticate with the Redis service
|
||||||
|
REDIS_PASSWORD=${REDIS_PASSWORD}
|
||||||
|
|
||||||
|
# Port on which Kafka distributed streaming platform is running
|
||||||
|
KAFKA_PORT=${KAFKA_PORT}
|
||||||
|
|
||||||
|
# Address or hostname for the Kafka service
|
||||||
|
KAFKA_ADDR=${KAFKA_ADDR}
|
||||||
|
|
||||||
|
# Topic in Kafka for storing the latest messages in Redis
|
||||||
|
KAFKA_LATESTMSG_REDIS_TOPIC=${KAFKA_LATESTMSG_REDIS_TOPIC}
|
||||||
|
|
||||||
|
# Topic in Kafka for pushing messages (e.g. notifications or updates)
|
||||||
|
KAFKA_MSG_PUSH_TOPIC=${KAFKA_MSG_PUSH_TOPIC}
|
||||||
|
|
||||||
|
# Topic in Kafka for storing offline messages in MongoDB
|
||||||
|
KAFKA_OFFLINEMSG_MONGO_TOPIC=${KAFKA_OFFLINEMSG_MONGO_TOPIC}
|
||||||
|
|
||||||
|
# Port on which MinIO object storage service is running
|
||||||
|
MINIO_PORT=${MINIO_PORT}
|
||||||
|
|
||||||
|
# Access key to authenticate with the MinIO service
|
||||||
|
MINIO_ACCESS_KEY=${MINIO_ACCESS_KEY}
|
||||||
|
|
||||||
|
# Secret key corresponding to the access key for MinIO authentication
|
||||||
|
MINIO_SECRET_KEY=${MINIO_SECRET_KEY}
|
||||||
|
|||||||
@ -1,64 +1,60 @@
|
|||||||
#fixme Clone openIM Server project before using docker-compose,project address:https://github.com/OpenIMSDK/Open-IM-Server.git
|
#fixme Clone openIM Server project before using docker-compose,project address:https://github.com/OpenIMSDK/Open-IM-Server.git
|
||||||
version: "3"
|
version: '3'
|
||||||
|
|
||||||
services:
|
services:
|
||||||
mysql:
|
mysql:
|
||||||
image: mysql:5.7
|
image: mysql:5.7
|
||||||
ports:
|
ports:
|
||||||
- 13306:3306
|
- "${MYSQL_PORT}:3306"
|
||||||
- 23306:33060
|
|
||||||
container_name: mysql
|
container_name: mysql
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_DIR}/components/mysql/data:/var/lib/mysql
|
- "${DATA_DIR}/components/mysql/data:/var/lib/mysql"
|
||||||
- /etc/localtime:/etc/localtime
|
- "/etc/localtime:/etc/localtime"
|
||||||
environment:
|
environment:
|
||||||
MYSQL_ROOT_PASSWORD: ${PASSWORD}
|
MYSQL_ROOT_PASSWORD: "${MYSQL_PASSWORD}"
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
mongodb:
|
mongodb:
|
||||||
image: mongo:6.0.2
|
image: mongo:6.0.2
|
||||||
ports:
|
ports:
|
||||||
- 37017:27017
|
- "${MONGO_PORT}:27017"
|
||||||
container_name: mongo
|
container_name: mongo
|
||||||
command: --wiredTigerCacheSizeGB 1 --auth
|
command: --wiredTigerCacheSizeGB 1 --auth
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_DIR}/components/mongodb/data/db:/data/db
|
- "${DATA_DIR}/components/mongodb/data/db:/data/db"
|
||||||
- ${DATA_DIR}/components/mongodb/data/logs:/data/logs
|
- "${DATA_DIR}/components/mongodb/data/logs:/data/logs"
|
||||||
- ${DATA_DIR}/components/mongodb/data/conf:/etc/mongo
|
- "${DATA_DIR}/components/mongodb/data/conf:/etc/mongo"
|
||||||
- ./scripts/mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro
|
- "./scripts/mongo-init.sh:/docker-entrypoint-initdb.d/mongo-init.sh:ro"
|
||||||
environment:
|
environment:
|
||||||
- TZ=Asia/Shanghai
|
- TZ=Asia/Shanghai
|
||||||
# cache
|
|
||||||
- wiredTigerCacheSizeGB=1
|
- wiredTigerCacheSizeGB=1
|
||||||
- MONGO_INITDB_ROOT_USERNAME=${USER}
|
- MONGO_INITDB_ROOT_USERNAME=${MONGO_USERNAME}
|
||||||
- MONGO_INITDB_ROOT_PASSWORD=${PASSWORD}
|
- MONGO_INITDB_ROOT_PASSWORD=${MONGO_PASSWORD}
|
||||||
- MONGO_INITDB_DATABASE=openIM
|
- MONGO_INITDB_DATABASE=${MONGO_DATABASE}
|
||||||
- MONGO_USERNAME=${USER}
|
|
||||||
- MONGO_PASSWORD=${PASSWORD}
|
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
redis:
|
redis:
|
||||||
image: redis:7.0.0
|
image: redis:7.0.0
|
||||||
ports:
|
ports:
|
||||||
- 16379:6379
|
- "${REDIS_PORT}:6379"
|
||||||
container_name: redis
|
container_name: redis
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_DIR}/components/redis/data:/data
|
- "${DATA_DIR}/components/redis/data:/data"
|
||||||
#redis config file
|
- "${DATA_DIR}/components/redis/config/redis.conf:/usr/local/redis/config/redis.conf"
|
||||||
- ${DATA_DIR}/components/redis/config/redis.conf:/usr/local/redis/config/redis.conf
|
|
||||||
environment:
|
environment:
|
||||||
TZ: Asia/Shanghai
|
TZ: Asia/Shanghai
|
||||||
restart: always
|
restart: always
|
||||||
sysctls:
|
sysctls:
|
||||||
net.core.somaxconn: 1024
|
net.core.somaxconn: 1024
|
||||||
command: redis-server --requirepass ${PASSWORD} --appendonly yes
|
command: redis-server --requirepass ${REDIS_PASSWORD} --appendonly yes
|
||||||
|
|
||||||
zookeeper:
|
zookeeper:
|
||||||
image: wurstmeister/zookeeper
|
image: wurstmeister/zookeeper
|
||||||
ports:
|
ports:
|
||||||
- 2181:2181
|
- "${ZOOKEEPER_PORT}:2181"
|
||||||
container_name: zookeeper
|
container_name: zookeeper
|
||||||
volumes:
|
volumes:
|
||||||
- /etc/localtime:/etc/localtime
|
- "/etc/localtime:/etc/localtime"
|
||||||
environment:
|
environment:
|
||||||
TZ: Asia/Shanghai
|
TZ: Asia/Shanghai
|
||||||
restart: always
|
restart: always
|
||||||
@ -69,13 +65,13 @@ services:
|
|||||||
container_name: kafka
|
container_name: kafka
|
||||||
restart: always
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
- 9092:9092
|
- "${KAFKA_PORT}:9092"
|
||||||
environment:
|
environment:
|
||||||
TZ: Asia/Shanghai
|
TZ: Asia/Shanghai
|
||||||
KAFKA_BROKER_ID: 0
|
KAFKA_BROKER_ID: 0
|
||||||
KAFKA_ZOOKEEPER_CONNECT: 127.0.0.1:2181
|
KAFKA_ZOOKEEPER_CONNECT: "${ZOOKEEPER_ADDRESS}:${ZOOKEEPER_PORT}"
|
||||||
KAFKA_CREATE_TOPICS: "latestMsgToRedis:8:1,msgToPush:8:1,offlineMsgToMongoMysql:8:1"
|
KAFKA_CREATE_TOPICS: "${KAFKA_LATESTMSG_REDIS_TOPIC}:8:1,${KAFKA_MSG_PUSH_TOPIC}:8:1,${KAFKA_OFFLINEMSG_MONGO_TOPIC}:8:1"
|
||||||
KAFKA_ADVERTISED_LISTENERS: INSIDE://127.0.0.1:9092,OUTSIDE://103.116.45.174:9092
|
KAFKA_ADVERTISED_LISTENERS: INSIDE://${KAFKA_ADDR}:${KAFKA_PORT},OUTSIDE://CHANGE_TO_YOUR_EXTERNAL_IP:${KAFKA_PORT}
|
||||||
KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9093
|
KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9093
|
||||||
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT"
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT"
|
||||||
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
|
KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
|
||||||
@ -86,15 +82,15 @@ services:
|
|||||||
minio:
|
minio:
|
||||||
image: minio/minio
|
image: minio/minio
|
||||||
ports:
|
ports:
|
||||||
- 10005:9000
|
- "${MINIO_PORT}:9000"
|
||||||
- 9090:9090
|
- "9090:9090"
|
||||||
container_name: minio
|
container_name: minio
|
||||||
volumes:
|
volumes:
|
||||||
- ${DATA_DIR}/components/mnt/data:/data
|
- "${DATA_DIR}/components/mnt/data:/data"
|
||||||
- ${DATA_DIR}/components/mnt/config:/root/.minio
|
- "${DATA_DIR}/components/mnt/config:/root/.minio"
|
||||||
environment:
|
environment:
|
||||||
MINIO_ROOT_USER: ${USER}
|
MINIO_ROOT_USER: "${MINIO_ACCESS_KEY}"
|
||||||
MINIO_ROOT_PASSWORD: ${PASSWORD}
|
MINIO_ROOT_PASSWORD: "${MINIO_SECRET_KEY}"
|
||||||
restart: always
|
restart: always
|
||||||
command: minio server /data --console-address ':9090'
|
command: minio server /data --console-address ':9090'
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ function def() {
|
|||||||
|
|
||||||
# app要能访问到此ip和端口或域名
|
# app要能访问到此ip和端口或域名
|
||||||
def "API_URL" "http://${IP}:10002"
|
def "API_URL" "http://${IP}:10002"
|
||||||
|
|
||||||
|
# OpenIM Docker Compose 数据存储的默认路径
|
||||||
def "DATA_DIR" "${OPENIM_ROOT}"
|
def "DATA_DIR" "${OPENIM_ROOT}"
|
||||||
|
|
||||||
# 设置统一的用户名,方便记忆
|
# 设置统一的用户名,方便记忆
|
||||||
@ -129,17 +131,17 @@ def "REDIS_USERNAME" # Redis的用户名
|
|||||||
def "REDIS_PASSWORD" "${PASSWORD}" # Redis的密码
|
def "REDIS_PASSWORD" "${PASSWORD}" # Redis的密码
|
||||||
|
|
||||||
###################### Kafka 配置信息 ######################
|
###################### Kafka 配置信息 ######################
|
||||||
def "KAFKA_USERNAME" # Kafka的用户名
|
def "KAFKA_USERNAME" # `Kafka` 的用户名
|
||||||
def "KAFKA_PASSWORD" # Kafka的密码
|
def "KAFKA_PASSWORD" # `Kafka` 的密码
|
||||||
def "KAFKA_PORT" "9092" # Kafka的端口
|
def "KAFKA_PORT" "9092" # `Kafka` 的端口
|
||||||
def "KAFKA_ADDR" "127.0.0.1" # Kafka的地址
|
def "KAFKA_ADDR" "127.0.0.1" # `Kafka` 的地址
|
||||||
def "KAFKA_LATESTMSG_REDIS_TOPIC" "latestMsgToRedis" # Kafka的最新消息到Redis的主题
|
def "KAFKA_LATESTMSG_REDIS_TOPIC" "latestMsgToRedis" # `Kafka` 的最新消息到Redis的主题
|
||||||
def "KAFKA_OFFLINEMSG_MONGO_TOPIC" "offlineMsgToMongoMysql" # Kafka的离线消息到Mongo的主题
|
def "KAFKA_OFFLINEMSG_MONGO_TOPIC" "offlineMsgToMongoMysql" # `Kafka` 的离线消息到Mongo的主题
|
||||||
def "KAFKA_MSG_PUSH_TOPIC" "msgToPush" # Kafka的消息到推送的主题
|
def "KAFKA_MSG_PUSH_TOPIC" "msgToPush" # `Kafka` 的消息到推送的主题
|
||||||
def "KAFKA_CONSUMERGROUPID_REDIS" "redis" # Kafka的消费组ID到Redis
|
def "KAFKA_CONSUMERGROUPID_REDIS" "redis" # `Kafka` 的消费组ID到Redis
|
||||||
def "KAFKA_CONSUMERGROUPID_MONGO" "mongo" # Kafka的消费组ID到Mongo
|
def "KAFKA_CONSUMERGROUPID_MONGO" "mongo" # `Kafka` 的消费组ID到Mongo
|
||||||
def "KAFKA_CONSUMERGROUPID_MYSQL" "mysql" # Kafka的消费组ID到MySql
|
def "KAFKA_CONSUMERGROUPID_MYSQL" "mysql" # `Kafka` 的消费组ID到MySql
|
||||||
def "KAFKA_CONSUMERGROUPID_PUSH" "push" # Kafka的消费组ID到推送
|
def "KAFKA_CONSUMERGROUPID_PUSH" "push" # `Kafka` 的消费组ID到推送
|
||||||
|
|
||||||
###################### RPC 配置信息 ######################
|
###################### RPC 配置信息 ######################
|
||||||
def "RPC_REGISTER_IP" # RPC的注册IP
|
def "RPC_REGISTER_IP" # RPC的注册IP
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user