Difference between revisions of "Rocket Chat:Contrib"
Line 18: | Line 18: | ||
n 0.10.40 | n 0.10.40 | ||
exit | exit | ||
+ | |||
+ | {{Note box | Please be careful to only install JUST the required packages in my repo. There are various testing packages in there that will BREAK YOUR SYSTEM ! }} | ||
You should now be able to install the rocketchat bundle with: | You should now be able to install the rocketchat bundle with: | ||
Line 77: | Line 79: | ||
===Updates=== | ===Updates=== | ||
− | If there is an update to | + | If there is an update to Rocket.Chat I will add to my repo. You should just be able to run: |
yum --enablerepo=reetp install rocketchat | yum --enablerepo=reetp install rocketchat | ||
+ | You can also update the smeserver-rocketchat contrib in the same way | ||
− | = | + | yum --enablerepo=reetp install smeserver-rocketchat |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
===SSL=== | ===SSL=== | ||
− | {{Note box | This is still experimental and there | + | {{Note box | This is still experimental and there may be issues with SSL only for the Primary iBay and Letsencrypt. You will need a minimum version of smeserver-rocketchat-0.1-5 }} |
It is recommended to add Letsencrypt support as detailed below. | It is recommended to add Letsencrypt support as detailed below. | ||
Line 154: | Line 149: | ||
Anything else going to chat.mycompany.local should get to Rocket.Chat | Anything else going to chat.mycompany.local should get to Rocket.Chat | ||
− | ===Mongo DB examples | + | ===Bugs=== |
+ | |||
+ | Look for bugs :-) As the contrib is not in CVS please report them in the forum and I will try and keep an eye out. | ||
+ | |||
+ | You ay get an error on install of the rocketchat rpm as follows: | ||
+ | |||
+ | npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue | ||
+ | |||
+ | This is due to the installed version of npm/node from SCL. Rocket.Chat should till work | ||
+ | |||
+ | |||
+ | ==Mongo DB examples== | ||
Example using mongo itself: | Example using mongo itself: |
Revision as of 14:59, 26 August 2016
smeserver-rocketchat contrib
This contrib aims to reduce some of the setup for rocketchat and add some flexibility with settings
Add repos:
yum install rh-python34-python rh-mongodb26-mongodb rh-mongodb26-mongodb-server nodejs010 GraphicsMagick --enablerepo=centos-sclo-rh,epel
scl enable nodejs010 bash npm install -g inherits npm install -g n n 0.10.40 exit
You should now be able to install the rocketchat bundle with:
yum --enablerepo=reetp install rocketchat
This may take a while on first install as it installs the npm modules for the first time.
Now you should be able to install the rocketchat contrib:
yum enablerepo=reetp install smeserver-rocketchat
db setprop rocketchat status enabled
signal-event post-upgrade;signal-event reboot
DB settings
rocketchat=service TCPPort=3000 access=public mailPort=25 mailURL=localhost status=enabled
rh-mongodb26-mongod=service TCPPort=27017 access=private mongoURL=localhost status=enabled
BEFORE we login for the first time we need to set up mail settings correctly:
From bash:
mongo rocketchat --eval 'db.rocketchat_settings.update({"_id" : "SMTP_Host"}, {$set: {"value":"localhost"}});' mongo rocketchat --eval 'db.rocketchat_settings.update({"_id" : "From_Email"}, {$set: {"value":"admin@yourdomain.com"}});'
We can check the individual values set like this:
mongo rocketchat --eval 'db.rocketchat_settings.find({"_id":"From_Email"}, {_id:0, value:1}).shellPrint();' mongo rocketchat --eval 'db.rocketchat_settings.find({"_id":"SMTP_Host"}, {_id:0, value: 1}).shellPrint();'
All values per _id:
mongo rocketchat --eval 'db.rocketchat_settings.find({"_id" : "SMTP_Host"}).shellPrint();' mongo rocketchat --eval 'db.rocketchat_settings.find({"_id" : "From_Email"}).shellPrint();'
Now restart rocketchat to reread the DB settings:
service rocketchat restart
Login at http://yourdomain:3000
It will first get you to create an admin user.
If you have an issue with no email sent/received then login using the email address and password you just set
Updates
If there is an update to Rocket.Chat I will add to my repo. You should just be able to run:
yum --enablerepo=reetp install rocketchat
You can also update the smeserver-rocketchat contrib in the same way
yum --enablerepo=reetp install smeserver-rocketchat
SSL
It is recommended to add Letsencrypt support as detailed below.
We need some extra settings to enable SSL with ProxyPass.
First install proxy pass rpm:
yum --enablerepo=fws install mod_proxy_wstunnel
Regenerate httpd.conf
signal-event remoteaccess-update
Now we need to setup our subdomain
db domains set chat.mycompany.local domain Description RocketChat Nameservers internet \ TemplatePath ProxyPassVirtualRocketchat ProxyPassTarget http://localhost:3000/
It should look like this:
chat.mycompany.local=domain Nameservers=internet ProxyPassTarget=http://127.0.0.1:3000/ TemplatePath=ProxyPassVirtualRocketchat
We need to set Rocket.Chat to listen on localhost now:
config setprop rocketchat rootURL localhost signal-event remoteaccess-update service rocketchat restart
If you can now successfully get to Rocketchat on your subdomain https://chat.mycompany.local you can disable default access on port 3000:
config setprop rocketchat access private signal-event remoteaccess-update
Letsencrypt support
You can add letsencrypt should you wish - please see https://wiki.contribs.org/Letsencrypt
You will need to add the domain key as follows, and add your letsencrypt certificates as per the wiki page:
db domains setprop chat.mycompany.local letsencryptSSLcert enabled
Note that smeserver-rocketchat adds redirect on port 80 for the letsencrypt directory .well-known/acme-challenge
You should be able to reach:
http://chat.mycompany.local/.well-known/acme-challenge/
This should redirect to:
https://chat.mycompany.local/.well-known/acme-challenge/
Anything else going to chat.mycompany.local should get to Rocket.Chat
Bugs
Look for bugs :-) As the contrib is not in CVS please report them in the forum and I will try and keep an eye out.
You ay get an error on install of the rocketchat rpm as follows:
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
This is due to the installed version of npm/node from SCL. Rocket.Chat should till work
Mongo DB examples
Example using mongo itself:
mongo
use rocketchat
db.rocketchat_settings.find({"_id" : "SMTP_Host"}) db.rocketchat_settings.find({"_id" : "From_Email"})
db.rocketchat_settings.findOne({_id : "From_Email"}, {_id:0, value: 1}) db.rocketchat_settings.findOne({_id : "SMTP_Host"}, {_id:0, value: 1})
db.rocketchat_settings.update({"_id" : "From_Email"}, {$set: {"value":"admin@reetspetit.info"}}) db.rocketchat_settings.update({"_id" : "SMTP_Host"}, {$set: {"value":"mail.reetspetit.info"}})