From decff009eeaa2acc88fed5884d4297e2165c053a Mon Sep 17 00:00:00 2001 From: ltf Date: Sun, 12 Dec 2021 14:42:40 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E6=96=B0=E5=A2=9E=E6=B3=A8=E9=87=8A?= =?UTF-8?q?=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- deploy/config.example.yaml | 7 +++-- deploy/env.yaml | 64 ++++++++++++++++++-------------------- deploy/openim.yaml | 15 +-------- deploy/readme.md | 11 ++++++- 4 files changed, 46 insertions(+), 51 deletions(-) diff --git a/deploy/config.example.yaml b/deploy/config.example.yaml index 39e5123de..9f14c96d4 100644 --- a/deploy/config.example.yaml +++ b/deploy/config.example.yaml @@ -5,10 +5,10 @@ serverversion: 1.0.3 #---------------Infrastructure configuration---------------------# etcd: etcdSchema: openIM - etcdAddr: [ etcd:2379 ] + etcdAddr: [ openim_etcd:2379 ] mysql: - dbMysqlAddress: [ 192.168.31.101:3306 ] + dbMysqlAddress: [ openim_mysql:3306 ] # openim_mysql 是对应的mysql服务的host dbMysqlUserName: openIM dbMysqlPassword: openIM dbMysqlDatabaseName: openIM @@ -19,7 +19,7 @@ mysql: dbMaxLifeTime: 120 mongo: - dbAddress: [ 192.168.31.102:27017 ] + dbAddress: [ openim_mongo:27017 ] dbDirect: false dbTimeout: 10 dbDatabase: openIM @@ -58,6 +58,7 @@ kafka: serverip: 0.0.0.0 # endpoints 内部组件间访问的端点host名称,访问时,可以内部直接访问 host:port 来访问 +# 新增的这一段配置节,主要是位了注册到etcd时,可以使用同一network下的容器名(host)来访问不同的容器,拆分到不同容器后原来全部使用serverip的形式不能用了 endpoints: api: openim_api push: openim_push diff --git a/deploy/env.yaml b/deploy/env.yaml index 9f7f7edbd..423807e4f 100644 --- a/deploy/env.yaml +++ b/deploy/env.yaml @@ -4,43 +4,42 @@ networks: external: true services: - # mysql: - # networks: - # - openim - # image: 192.168.31.101:8080/library/mysql:5.7 - # # ports: - # # #- 13306:3306 - # # - 23306:33060 - # container_name: mysql - # volumes: - # - ./components/mysql/data:/var/lib/mysql - # - /etc/localtime:/etc/localtime - # environment: - # MYSQL_ROOT_PASSWORD: openIM - # restart: always - - # mongodb: - # networks: - # - openim - # image: 192.168.31.101:8080/library/mongo:4.4.5-bionic - # # ports: - # # - 37017:27017 - # container_name: mongo - # volumes: - # - ./components/mongodb/data/db:/data/db - # - ./components/mongodb/data/logs:/data/logs - # - ./components/mongodb/data/conf:/etc/mongo - # # environment: - # # - MONGO_INITDB_ROOT_USERNAME=openIM - # # - MONGO_INITDB_ROOT_PASSWORD=openIM + 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 - # #TZ: Asia/Shanghai - # 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: 192.168.31.101:8080/library/redis:6.2.4-alpine + image: redis:6.2.4-alpine # ports: # - 16379:6379 container_name: openim_redis @@ -69,7 +68,6 @@ services: TZ: Asia/Shanghai restart: always - kafka: networks: - openim diff --git a/deploy/openim.yaml b/deploy/openim.yaml index b404bbfac..350729399 100644 --- a/deploy/openim.yaml +++ b/deploy/openim.yaml @@ -1,15 +1,11 @@ version: "3.7" -#fixme Clone openIM Server project before using docker-compose,project address:https://github.com/OpenIMSDK/Open-IM-Server.git networks: - huochai-local: - external: true openim: external: true services: api: networks: - - huochai-local - openim image: openim/api container_name: openim_api @@ -17,6 +13,7 @@ services: - 10000:10000 # API,必须开 volumes: - ./logs:/app/logs + # Dockerfile 里定义了配置文件的路径环境变量,CONFIG_NAME,默认指向了 /app/config/config.yaml - ./config/config.yaml:/app/config/config.yaml - ./db/sdk:/app/db/sdk restart: always @@ -34,7 +31,6 @@ services: msg_gateway: networks: - - huochai-local - openim image: openim/msg_gateway container_name: openim_msg_gateway @@ -59,7 +55,6 @@ services: msg_transfer: networks: - - huochai-local - openim image: openim/msg_transfer container_name: openim_msg_transfer @@ -82,7 +77,6 @@ services: push: networks: - - huochai-local - openim image: openim/push container_name: openim_push @@ -105,7 +99,6 @@ services: timer_task: networks: - - huochai-local - openim image: openim/timer_task container_name: openim_timer_task @@ -128,7 +121,6 @@ services: rpc_user: networks: - - huochai-local - openim image: openim/rpc_user container_name: openim_rpc_user @@ -151,7 +143,6 @@ services: rpc_friend: networks: - - huochai-local - openim image: openim/rpc_friend container_name: openim_rpc_friend @@ -169,7 +160,6 @@ services: rpc_group: networks: - - huochai-local - openim image: openim/rpc_group container_name: openim_rpc_group @@ -187,7 +177,6 @@ services: rpc_auth: networks: - - huochai-local - openim image: openim/rpc_auth container_name: openim_rpc_auth @@ -205,7 +194,6 @@ services: rpc_msg: networks: - - huochai-local - openim image: openim/rpc_msg container_name: openim_rpc_msg @@ -223,7 +211,6 @@ services: demo: networks: - - huochai-local - openim image: openim/demo container_name: openim_demo diff --git a/deploy/readme.md b/deploy/readme.md index d947320e8..61fbd9700 100644 --- a/deploy/readme.md +++ b/deploy/readme.md @@ -6,16 +6,25 @@ make win-build-all # 得到各个二进制程序之后,打包为镜像 -# +# 目前没有处理 Open-IM-SDK-Core ,需要的话可以自己单独处理这个模块 make image-all # docker-compose.yaml 分成了两部分,一部分是openIM的镜像容器 openim.yaml,一部分是依赖的环境 env.yaml # 两部分使用一个外部的网络来联通,所以首先创建用到的 network docker network create openim --attachable=true -d bridge +# 处理openim组件需要的挂载目录,主要是处理config目录 +mkdir ./config +cp ./config.example.yaml ./config/config.yaml # 修改 ./config/config.yaml 内容,比如各个依赖组件的 host + # 然后拉起env.yaml docker-compose -f ./env.yaml up -d # 等env 容器全部拉起成功之后,拉起openim.yaml docker-compose -f ./openim.yaml up -d + +# 查看容器运行,推荐使用下 portainer ,web查看容器情况,查看日志等等 +docker container ps -a | grep openim + +# 正常应该是查看api,demo等的容器日志,看到gin打印的路由日志才算是成功 ``` \ No newline at end of file