4

OpenIM (Open-Source Instant Messaging) Mac Deployment Guide

 7 months ago
source link: https://studygolang.com/articles/36507
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

This guide provides step-by-step instructions for deploying OpenIM on a Mac, including both source code and Docker deployment methods.

Preliminary Environment Setup

Ensure a clean working environment:

  1. Create a New Directory: Start in a new directory to prevent conflicts.
  2. Check for Conflicting Processes: Run these commands:
    • ps -ef | grep openim
    • ps -ef | grep chat
  3. Check Docker Containers: Use docker ps to confirm no related containers are running.

Source Code Deployment

Deploying openim-server

Deploying from source requires adjusting Docker's network configurations for Mac.

  1. Clone and Prepare the Repository:

    git clone https://github.com/openimsdk/open-im-server
    cd open-im-server
    export OPENIM_IP="[Your External/Internal IP]"
    make init
    
  2. Configure Kafka in docker-compose.yml:

    • Replace:
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092,EXTERNAL://${DOCKER_BRIDGE_GATEWAY:-172.28.0.1}:${KAFKA_PORT:-19094}
      
    • With:
      - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092,EXTERNAL://127.0.0.1:${KAFKA_PORT:-19094}
      
  3. Start the Service:

    docker compose up -d
    
  4. Final Configurations:

    vim config/config.yaml -c "%s/172\.28\.0\.1/127.0.0.1/g" -c "wq"
    
  5. Launch openim-server:

    make start
    
  6. Verification:

    make check
    

    Wait five minutes before checking to ensure accuracy.

Deploying openim-chat

Deploy openim-chat using source code or Docker.

  1. Return to Parent Directory:

    cd ..
    
  2. Deploy from Source:

    git clone https://github.com/openimsdk/chat
    cd chat
    make init
    
  3. Set Up MySQL (if not already deployed):

    docker run -d \
      --name mysql \
      -p 13306:3306 \
      -p 23306:33060 \
      -v "$(pwd)/components/mysql/data:/var/lib/mysql" \
      -v "/etc/localtime:/etc/localtime" \
      -e MYSQL_ROOT_PASSWORD="openIM123" \
      --restart always \
      mariadb:10.6
    
  4. Configure openim-chat: Modify config/config.yaml, replacing 172.28.0.1 with 127.0.0.1.

  5. Start openim-chat:

    make start
    
  6. Verification:

    make check
    
  7. Web Interface Access: Visit http://127.0.0.1:11001. For validation, see this guide.

Docker Deployment

For Docker deployment on Mac, refer to OpenIM Docker Documentation.

About OpenIM

OpenIM is an open-source instant messaging component and solution that specializes in in-app communication. It is one of the most popular open-source IM projects currently. Developers can integrate the OpenIM component and deploy the server privately, quickly incorporating instant and real-time communication capabilities into their applications, ensuring the security and confidentiality of business data.

Repository address: https://github.com/openimsdk

Developer Documentation: https://docs.openim.io/guides/introduction![IMG_1065.png](https://static.golangjob.cn/240128/b9eb6a96784751a7cd9d9cdb2141bfce.png)


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK