Search

내부망 메신저 구축 - Rocket.Chat

내부망과 같이 인터넷이 없는 환경에서 개발을 진행하다보면 구두로 매번 말하고, 파일로 적어 옮기기가 여간 불편한게 아니다.
이를 위한 메신저 서비스를 구축하기 위해 오픈소스 RocketChat을 들이기로 했고 외부에서 VM으로 서버를 구축한다음 내부로 옮기는 방식으로 진행했다.
위 깃헙 링크를 기반(2023.12.29)으로 진행했으며 운영체제는 ubuntu-22.04.3-desktop-amd64 로 새로 만들어 수행했다.

설치

docker 이미지를 지원하기 때문에 설치는 무척이나 간단하다.
(ubuntu) Git 설치 및 Git clone
sudo apt install git
Bash
복사
git clone https://github.com/RocketChat/Docker.Official.Image.git cd Docker.Official.Image/
Bash
복사
(ubuntu) docker 설치 및 docker 구성
sudo apt install docker sudo apt install docker-compose
Bash
복사
sudo docker-compose up -d
Bash
복사
compose.yml에 따라 mongodb 및 rocketchat 도커 이미지를 다운받게 된다.
구성이 완료되면 http://localhost:3000 에 접속하면 rocket.chat 구성 페이지를 만나볼 수 있다.

오류 수정

이상하게 브라우저로 3000포트에 접속해도 서비스가 보이지 않아 실행 중인 도커 로그를 확인해보니 계속 오류가 발생하고 있었다.
URL 환경변수 설정 문제인듯 해 이것저것 건드리다가 그냥 기존 여러 환경 변수 설정 값들을 간소화 및 하드코딩해 compose.yml을 재구성하니 문제가 해결됐다.
당연히 이후 서비스를 구성하려면 localhost 부분을 알맞은 ip나 도메인으로 변경, 방화벽 설정 등을 고려해야한다.
(ubuntu) 실행 중인 도커 서비스 종료
sudo docker-compose down
Bash
복사
compose.yml 간소화
services: rocketchat: image: registry.rocket.chat/rocketchat/rocket.chat:latest restart: always environment: MONGO_URL: "mongodb://mongodb:27017/rocketchat" MONGO_OPLOG_URL: "mongodb://mongodb:27017/local" ROOT_URL: "http://localhost:3000" PORT: 3000 depends_on: - mongodb ports: - "3000:3000" mongodb: image: docker.io/bitnami/mongodb:5.0 restart: always volumes: - mongodb_data:/bitnami/mongodb environment: MONGODB_REPLICA_SET_MODE: primary MONGODB_REPLICA_SET_NAME: rs0 MONGODB_PORT_NUMBER: 27017 MONGODB_INITIAL_PRIMARY_HOST: mongodb MONGODB_INITIAL_PRIMARY_PORT_NUMBER: 27017 MONGODB_ADVERTISED_HOSTNAME: mongodb MONGODB_ENABLE_JOURNAL: "true" ALLOW_EMPTY_PASSWORD: "yes" volumes: mongodb_data: driver: local
YAML
복사

실행 결과

도커를 재실행해 구성하면 위와 같은 구성 페이지를 만날 수 있고, 설정하며 이메일 인증을 완료하면 된다.
(이메일 인증 과정이 잘 진행되지 않을 경우 rocketchat 서비스에 해당 메일로 로그인 후 인증을 진행)
구성 완료. 인터넷이 없는 환경으로 이동할 예정이면 desktop apps 에서 필요한 앱들을 미리 다운받아놓으면 좋다.

✓ 다른 [정리] 포스트

베트남 환전 왜 한국에서 하면 안될까? (한국 vs 공항 vs 금은방)
Travel
베트남 환전 왜 한국에서 하면 안될까? (한국 vs 공항 vs 금은방)
Travel
Load more
︎ 더 많은 게시물을 보려면
︎ 작성자가 궁금하면?
 2023. Absolroot all rights reserved.