Slack 是一款集聊天群組卦睹、大規(guī)模工具集成、文件整合檩赢、統(tǒng)一搜索等眾多功能于一體的團(tuán)隊(duì)溝通和協(xié)作軟件。但是由于網(wǎng)絡(luò)限制,導(dǎo)致國(guó)內(nèi)用戶連接 Slack 服務(wù)器的時(shí)間過(guò)長(zhǎng)贞瞒,經(jīng)常出現(xiàn)請(qǐng)求超時(shí)的情況偶房。
基于此,我們團(tuán)隊(duì)找到了一款 Slack 的開源替代品 Rockat.Chat 并將其 server 部署在 ubuntu 系統(tǒng)的服務(wù)器下军浆,雖然其沒(méi)有 Slack 這么強(qiáng)大棕洋,但在團(tuán)隊(duì)溝通協(xié)作和文件共享等方面還是很出色的,并且客戶端支持 Web乒融、App掰盘。以下是部署步驟:
step1: 安裝 Docker:
為了簡(jiǎn)化過(guò)程,我們使用 Docker 部署此應(yīng)用赞季。
# 安裝 curl
$ apt-get update
$ apt-get install curl
# 安裝 docker
$ curl -sSL https://get.docker.com/ | sh
# 測(cè)試 docker 是否安裝成功
$ docker ps
step2: 安裝 docker-compose
一個(gè)基于 docker 的應(yīng)用愧捕,通常由多個(gè) docker 容器組成,通過(guò) compose 你可以在單一文件中定義并通過(guò)簡(jiǎn)單的命令操作這些容器申钩。
# VERSION_NUM 是 docker-compose 的版本號(hào)次绘,可以訪問(wèn) https://github.com/docker/compose/releases 查看最新的可用版本
$ curl -L https://github.com/docker/compose/releases/download/VERSION_NUM/docker-compose-`uname -s`-`uname -m` > sudo /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
例如你想下載安裝 1.12.0 版本的 compose,應(yīng)執(zhí)行以下命名:
$ curl -L https://github.com/docker/compose/releases/download/1.12.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
# 測(cè)試 docker compose 是否安裝成功
$ docker-compose --version
解決 error message:
-
-bash: /usr/local/bin/docker-compose: Permission denied
:sudo -i
以root身份登錄后執(zhí)行命令 -
curl: (7) Failed to connect to github-cloud.s3.amazonaws.com port 443: Connection refused
:更換版本號(hào)再試撒遣,如果仍被 block 的話邮偎,請(qǐng)參考其他安裝方法
step3: Clone Rocket.Chat
我們使用 Git clone Rocket.Chat 的源碼,如果服務(wù)器上未安裝 Git义黎,可使用以下命令安裝:
$ apt-get install git
clone:
$ git clone https://github.com/RocketChat/Rocket.Chat.git
當(dāng)然禾进,你覺(jué)得這樣很麻煩的話,可以直接訪問(wèn)其 github地址 下載并上傳至服務(wù)器廉涕。
step4: 啟動(dòng) Rocket.Chat server
$ cd Rocket.Chat
$ docker-compose up
解決 error message:
-
Unsupported config option for services service: 'rocketchat'
:docker-compose
與 項(xiàng)目不兼容泻云,建議更新docker-compose
然后,你就可以通過(guò) http://server_ip:3000 連接至服務(wù)器了火的。
Tips:
- 如果你不希望通過(guò)
3000
端口訪問(wèn)服務(wù)器壶愤,可以修改項(xiàng)目根目錄下的docker-compose.yml
:
# 假如你希望通過(guò) 8080 端口訪問(wèn)服務(wù)器
rocketchat:
image: rocketchat/rocket.chat:latest
volumes:
- ./uploads:/app/uploads
environment:
- PORT=3000
- ROOT_URL=http://localhost:8080
- MONGO_URL=mongodb://mongo:27017/rocketchat
- MONGO_OPLOG_URL=mongodb://mongo:27017/local
- MAIL_URL=smtp://smtp.email
- HTTP_PROXY=http://proxy.domain.com
- HTTPS_PROXY=http://proxy.domain.com
links:
- mongo:mongo
ports:
- 8080:3000
labels:
- "traefik.backend=rocketchat"
- "traefik.frontend.rule=Host: your.domain.tld"
- 除了直接通過(guò) web 訪問(wèn),Rocket.Chat 團(tuán)隊(duì)還針對(duì)不同的系統(tǒng)開發(fā)了 App 供大家使用馏鹤。
- rocket.chat 使用指南