OpenIM Use Harbor Build Enterprise Mirror Repositories

Requirements OpenIM provides various public image registry addresses, such as aliyun, github, Docker Hub, and more. Read https://github.com/openimsdk/open-im-server/blob/main/docs/conversions/images.md for more image building guidelines. Most enterprises choose to set up their own image repository using Harbor, integrating it into their CI/CD pipeline to eventually replace Docker Hub and further reduce image storage costs. Additionally, in a production environment, Harbor generally enables TLS, so you will also need to prepare a valid domain name....

October 25, 2023 · 5 min · 987 words · Xinwei Xiong, Me

OpenIM clustering design Kubernetes deploy concludes

Conference and Reference Links Conference reference documents: https://nsddd.notion.site/2899028707604b8090b36677c031cdf8?pvs=4 Video playback: Bilibili: https://www.bilibili.com/video/BV1s8411q7Um/?spm_id_from=333.999.0.0 Comment: I think that middleware can be replaced with https://kubeblocks.io which can help you manage multiple database middlewares. im reads the configuration information, and reads the config/ directory. The config.yaml hard-coded in the code can be automatically divided into rpc for different services, and then unified directories. By default, the directory is read from the binary running path....

September 17, 2023 · 14 min · 2771 words · Xinwei Xiong, Me

Openim Devops Design

DevOps DevOps 🔥 DevOps is a culture and methodology for software development and operations that aims to shorten the software development cycle and improve software quality through automation and collaboration. DevOps (a portmanteau of Development and Operations) is a A culture, movement or practice that values communication and cooperation between “software developers (Dev)” and “IT operations and maintenance technicians (Ops)”. By automating the “software delivery” and “architecture change” processes, we can build, test, and release software faster, more frequently, and more reliably....

September 16, 2023 · 14 min · 2919 words · Xinwei Xiong, Me

Openim Multi Process Management

111: OpenIM multi-process management strategy Main modules This article will start from the most basic single-process foreground operation of OpenIM, to the nohup background operation, to the system system process, and then to Supervisord, container management, and kubernetes health detection. Current issues Read: https://github.com/cubxxw/Open-IM-Server/blob/refactor/feat-enhance/scripts/install/openim-crontask.sh source code The current process management strategy before OpenIM is started in the background through nohup. The entire project is run by multiple processes, and now a reliable keep-alive mechanism is needed to quickly pull it up when the process crashes....

September 16, 2023 · 22 min · 4555 words · Xinwei Xiong, Me

Openim Remote Work Culture

Principles 0) Ownership & Leadership When you see issues with the team or project, don’t wait or endure. Speak up immediately, propose solutions, initiate a meeting yourself, and adjust promptly. Don’t suppress your concerns! “Every team member embodies the roles of both Owner and Leader. When issues arise, be proactive in pointing them out and offering solutions. Don’t just wait or stay silent.” 1) Initiative Everyone must take the initiative. Whether it’s about starting something or claiming a task, if you find yourself idle, proactively identify problems and areas of improvement....

July 13, 2023 · 5 min · 1062 words · Xinwei Xiong, Me

Advanced Githook Design

What to do if the community is not standardized As the COO of the OpenIM community, I am responsible for the communtiy and [GitHub configuration repository](https:/ /github.com/OpenIMSDK/.github) has been fully configured. And architect and design the entire OpenIM Makefile and CICD flows, as well as the log package, error codes, collaborative flows, contributor documents and community documents used by the entire OpenIM. There will always be some problems at this time, even if you think your Contributor Document is very awesome....

June 16, 2023 · 9 min · 1826 words · Xinwei Xiong, Me

Openim Offline Deployment Design

1. Base Images Below are the base images and their versions you’ll need: wurstmeister/kafka redis:7.0.0 mongo:6.0.2 mysql:5.7 wurstmeister/zookeeper minio/minio Use the following commands to pull these base images: docker pull wurstmeister/kafka docker pull redis:7.0.0 docker pull mongo:6.0.2 docker pull mysql:5.7 docker pull wurstmeister/zookeeper docker pull minio/minio 2. OpenIM & Chat Images For detailed understanding of version management and storage of OpenIM and Chat: version.md OpenIM Image Get image version info: images....

May 19, 2023 · 2 min · 268 words · Xinwei Xiong, Me