Changes

From SME Server
Jump to navigationJump to search
393 bytes removed ,  16:49, 15 November 2023
Line 1: Line 1:  
'''[[Rocket_Chat#smeserver-rocketchat_contrib|Contrib]]''': [mailto:jcrisp@safeandsound.co.uk][[User:ReetP|John Crisp]]
 
'''[[Rocket_Chat#smeserver-rocketchat_contrib|Contrib]]''': [mailto:jcrisp@safeandsound.co.uk][[User:ReetP|John Crisp]]
{{Note box|Please note that there is also a howto on manually installing Rocket.Chat [[Rocket_Chat|'''here''']]
+
{{Note box|Please note that there is also a howto on manually installing Rocket.Chat [[Rocket_Chat|'''here''' This is largely obsolete.]]}}
However, due to dependencies a manual install will not work on SME}}Version up to 0.61.2 will work with this contrib.
     −
Later versions will need my newer smeserver-rocketchat-0.2.x contrib which uses docker.
+
Later versions will need my newer smeserver-rocketchat-0.4.x contrib which uses docker.
    
==smeserver-rocketchat contrib==
 
==smeserver-rocketchat contrib==
 
{{WIP box}}
 
{{WIP box}}
   −
There is no contrib for v10 as yet. I will work on it when I have time. These are just some notes for reference.
+
===Version===
 +
{{ #smeversion: smeserver-rocketchat }}
   −
==Current version==
     −
NA
+
==Required repos==
 +
 
 +
Add repos:
   −
You may be able to install from source but chances are CentOS7 will be 'too old'
+
* [[epel]]
 +
* [[mongoDB]]
 +
* [[Docker]]
 +
* [[User:ReetP|reetp]]
   −
Latest source is here:
+
===Installation===
   −
https://github.com/RocketChat/Rocket.Chat/tags
+
There is now a smeserver-rocketchat contrib to install Rocket.Chat with docker.
   −
==Required repos==
+
Install Mongo DB natively as per the wiki page https://wiki.koozali.org/MongoDB
 +
 
 +
Currently it is suggested to use Mongo 4.4
 +
 
 +
Mongo 5+ requires additional instructions in the CPU that older CPUs may not have. See teh wiki page for more.
 +
 
 +
Do not go further than initiating the replicaset. Users are not required.
 +
 
 +
Next install smeserver-docker following the wiki page https://wiki.koozali.org/Docker
   −
Add repos:
     −
* [[epel]]
  −
* [[User:ReetP|reetp]]
      
Settings
 
Settings
   −
  config set rocketchat service TCPPort 3000 mailPort 25 mailURL localhost access public status enabled
+
  config set rocketchat service TCPPort 3000 mailPort 25 mailURL localhost access private status enabled SSLProxy yes Version 5.4.9 rootURL chat.domain.com
      Line 64: Line 73:       −
===Errors===
+
===Reverse proxy===
 
  −
 
  −
NA
  −
  −
 
  −
===Apache SSL with Proxypass===
  −
{{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 (see here for my contrib https://wiki.contribs.org/Letsencrypt)
  −
 
  −
Make a copy of the ProxyPassVirtualHosts dir
  −
 
  −
cp -e /etc/e-smith/templates/etc/httpd/conf/httpd.conf/ProxyPassVirtualHosts /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/ProxyPassVirtualRocketchat
  −
 
  −
Edit this file:
  −
 
  −
/etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/ProxyPassVirtualRocketchat/50Content
  −
 
  −
Replace the existing code with this:
  −
 
  −
    ProxyPreserveHost on
  −
    SetEnv proxy-nokeepalive 1
  −
    ProxyPass /.well-known/acme-challenge/ !
  −
  −
    DocumentRoot /home/e-smith/files/ibays/Primary/html
  −
  −
    <IfModule mod_proxy_wstunnel.c>
  −
      ProxyPassMatch ^/sockjs/(.*)/websocket ws://localhost:3000/sockjs//websocket
  −
      ProxyPass /websocket ws://localhost:3000/websocket
  −
    </IfModule>
  −
  −
    ProxyPass / http://localhost:3000/
  −
    ProxyPassReverse / http://localhost:3000/
  −
  −
    <Location />
  −
        Require all granted
  −
    </Location>
  −
  −
    <Location /.well-known/acme-challenge/>
  −
        Require all granted
  −
    </Location>
  −
 
  −
 
  −
Save, and then run
  −
 
  −
signal-event webapps-update
  −
 
  −
 
      
Now we need to setup our subdomain for the reverse proxy
 
Now we need to setup our subdomain for the reverse proxy
Line 129: Line 90:     
  config setprop rocketchat rootURL chat.mycompany.domain SSLProxy yes
 
  config setprop rocketchat rootURL chat.mycompany.domain SSLProxy yes
  signal-event remoteaccess-update
+
  signal-event smeserver-rocketchat-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:
+
Now start the docker container (always run compose from the docker directory)
   −
  config setprop rocketchat access private
+
  cd /home/e-smith/files/docker/configs
signal-event remoteaccess-update
+
docker-compose up -d rocketchat
 
+
docker logs -f rocketchat
You may find you need to clear your browser cache before it works correctly on https://chat.mycompany.local rather than http://chat.mycompany.local:3000
  −
 
  −
IF you have Letsencrypt support you can now set your main domain to SSL only:
      
  db accounts setprop Primary SSL enabled
 
  db accounts setprop Primary SSL enabled
 
  signal-event ibay-modify Primary
 
  signal-event ibay-modify Primary
   −
===Upgrades===
     −
To upgrade rocketchat:
+
==Bugs==
   −
yum --enablerepo=reetp install rocketchat
+
Please raise bugs under the SME-Contribs section in {{BugzillaFileBug|product=|component=|title=bugzilla}}and select the smeserver-rocketchat component or use
 +
{{BugzillaFileBug|product=SME%20Contribs|component=smeserver-rocketchat |title=this link}}.
   −
To upgrade the rocketchat configurator:
     −
yum --enablerepo=reetp install smeserver-rocketchat
+
{{#bugzilla:columns=id,product,version,status,summary |sort=id |order=desc |disablecache=1 |component=smeserver-rocketchat |noresultsmessage="No open bugs found."}}
 
  −
===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.
        Line 177: Line 129:  
  db.rocketchat_settings.find({"_id" : "SMTP_Host"})
 
  db.rocketchat_settings.find({"_id" : "SMTP_Host"})
 
  db.rocketchat_settings.find({"_id" : "From_Email"})
 
  db.rocketchat_settings.find({"_id" : "From_Email"})
 +
 +
db.getCollection("rocketchat_settings").find({"name":"Joe Blogs"})
 +
 +
db.getCollection("rocketchat_settings").find({"_id":{$regex:"^LDAP"}})
    
  db.rocketchat_settings.findOne({_id : "From_Email"}, {_id:0, value: 1})
 
  db.rocketchat_settings.findOne({_id : "From_Email"}, {_id:0, value: 1})
Line 252: Line 208:     
  mongorestore --restoreDbUsersAndRoles -d rocketchat -dir  /root/rocketchatmongo/rocketchat --quiet
 
  mongorestore --restoreDbUsersAndRoles -d rocketchat -dir  /root/rocketchatmongo/rocketchat --quiet
 +
 +
===Database Fix tables===
 +
 +
To remove user data file links a variation on this link
 +
https://github.com/RocketChat/feature-requests/issues/718
 +
 +
mongo
 +
use rocketchat
 +
db.rocketchat_user_data_files.remove( { } )
 +
db.runCommand({ compact: 'rocketchat_user_data_files', force: true });
 +
quit;
    
==Node usage==
 
==Node usage==
Line 341: Line 308:     
https://handbook.rocket.chat/company/tools/rocket.chat
 
https://handbook.rocket.chat/company/tools/rocket.chat
 +
 +
==Bugs==
 +
 +
Please raise bugs under the SME-Contribs section in {{BugzillaFileBug|product=|component=|title=bugzilla}}and select the smeserver-rocketchat component or use
 +
{{BugzillaFileBug|product=SME%20Contribs|component=smeserver-rocketchat |title=this link}}.
 +
 +
 +
{{#bugzilla:columns=id,product,version,status,summary |sort=id |order=desc |disablecache=1 |component=smeserver-rocketchat |noresultsmessage="No open bugs found."}}

Navigation menu