На предыдущих местах работ мной использовались для общения такие инструменты как Slack, HipChat, которые работали в облаке. Однако на текущем месте работы политикой безопасности запрещено использование инструментов, которые хранят данные в «чужих» облаках. Встал вопрос: что использовать на новом месте работы? Изучив данный вопрос, я решил попробовать Rocket.Chat, который может устанавливаться на сервер организации и является бесплатным. Что такое Rocket.Chat и с чем его едят вы можете изучить на просторах интернета, а в данной статье я рассмотрю вопрос быстрой установки и настройки Rocket.Chat не для гиков, а для слегка продвинутых людей.

Мной использовалось:
— Ubuntu 16.04 LTS (убедитесь, что вы используете x64 или amd64, x86 — 32-бит и не поддерживается)
— Snap (что это такое https://geektimes.ru/post/277374)

Запускаем терминал на Ubuntu и начинаем работу.
В Ubuntu с версии 16.04 заявлена поддержка «snap», но на всякий случай запускаем его установку:

sudo apt-get install snapd

Он или установится, или система сообщит, что он уже установлен.

Запускаем установку Rocket.Chat:

sudo snap install rocketchat-server

После установки убеждаемся, что он запущен и работает:

sudo systemctl status snap.rocketchat-server.rocketchat-server.service

На самой машине, где установлен Rocket.Chat, можно уже проверять работу Rocket.Chat перейдя по адресу http://localhost:3000
Нам же необходимо, чтобы он работал по сети и был доступен с любого компьютера. К примеру, у меня есть домен «rocketchat.victorz.ru» и чтобы сервер был доступен по этому адресу надо:
1. Прописать на хостинге A-запись указав, что домен «rocketchat.victorz.ru» привязан к IP-адресу сервера, на котором я установил Rocket.Chat.
2. Необходимо инициализировать Caddy (http-сервер) на самом сервере:

sudo rocketchat-server.initcaddy

Затем редактируем Caddyfile, расположенный по адресу «/var/snap/rocketchat-server/current/Caddyfile»:

sudo nano /var/snap/rocketchat-server/current/Caddyfile

Вносим изменения в данный файл, в моём случае пишем следующее:

http://rocketchat.victorz.ru {
  proxy / localhost:3000 {
    websocket
    transparent
  }
}

Сохраняем («Ctrl + O», далее «Enter») и закрываем («Ctrl + X») файл.
Выше мы указали, что слушать стандартный порт 80 и не использовать SSL.

Перезапускаем Caddy:

sudo systemctl restart snap.rocketchat-server.rocketchat-caddy

Теперь в браузере вводим прописанный адрес, в моём случае rocketchat.victorz.ru, и видим окно авторизации.

Rocket.Chat настроен и готов к работе.

Если у вас операционная система не Ubuntu или есть нюансы в установке, то вы можете получить дополнительную информацию по установке на официальном сайте Rocket.Chat https://rocket.chat/docs/installation/manual-installation

Дополнения:

Максим:
Если проблема на этапе с Caddy (в статье шаг 2), то может помочь инструкция от разработчика:
rocket.chat/docs/installation/manual-installation/ubuntu/snaps/autossl/