Technical requirements
...
Server Software
...
Windows Server 2019 Container
Version 1809 or higher
OS Build: latest
(current version can be found using the command 'winver'. Windows Update could be necessary for reaching the minimal patch version)
...
Server Hardware
...
Physical or Virtual Machine (VM)
Processor : 2.5 Ghz (Dual Core)
RAM : 8 GB (16 GB recommended)
Storage : 50 GB
...
DNS Entries
...
5 DNS entries redirected to the On-Premise Server.
For this first entry, ROOMZ will generate the certificate during the installation :
api.roomz.example.com
For those 4 entries, the organization must create the certificates :
(The self signed certificate can use a wildcard. Thus, only one certificate could be issued for all the entries. Eg: "*.roomz.example.com")
portal.roomz.example.com
portal-api.roomz.example.com
login.roomz.example.com
viewer.roomz.example.com
...
Wi-Fi
...
Open
WPA2 - Personal (PSK)
WPA2 - Enterprise
EAP-TLS (Certificates)
PEAPv0 / EAP- MSCHAPv2 (Username - Password)
...
Working SMTP address
...
Used in order to send invitations for the users, and send notifications
...
Internet connection
...
Only necessary during installation and updates (the download happens in an elevated Powershell). In normal duty, The ROOMZ server can be totally disconnected from the Internet
IMPORTANT: VMware Tools minimum version 11.0.6 is necessary
An issue exists with VMware Tools lower than the version 11.0.6 and the docker networks, you have to update the VMWare Tools to the version 11.0.6 at least.
Docker engine
If you don't have the Docker Engine installed, please follow the instructions to install Docker Enterprise on your server.
Docker compose
If you don't have the Docker Compose installed, please follow the instructions to install it.
Docker and the Antivirus software
https://docs.docker.com/engine/security/antivirus/
Firewall DNS Whitelist
To be able to download all packages from the Internet, the following addresses should be reachable from the server.
This is only necessary during the installation, and the access can be deactivated once ROOMZ On-Premise is up and running.
ROOMZ Registry
*.blob.core.windows.net
Microsoft Registry
*.cdn.mscr.io
*.data.mcr.microsoft.com
Microsoft Powershell Gallery
*.powershellgallery.com
Github
Other
Windows Defender exceptions
In order for the installation to work flawlessly and the system to run as smoothly as possible, please add the following exceptions to Windows Defender:
...
Advanced
Docker behind a corporate proxy
To configure the Docker client behind a proxy, you have to configure the Docker service to use your proxy.
Certificates
Often the customer certificate is provided as PFX/P12 but NGINX doesn't support it. We have to convert the format PFX/P12 to a format more generic which is called PEM. The command line tool OpenSSL provide an easy way to explode the certificate in 2 parts, the certificate(only) and the key of the certificate which is used to make the cryptographic operations.
Info |
---|
This is NOT MANDATORY to install the OpenSSL command line on the server, you can install it anywhere, execute the commands and move the certificate files(*.crt, *.key) to the server. |
To extract the certificate and its parents, execute the following command in your terminal, this file will contain information of your server and organization.
Code Block |
---|
openssl pkcs12 -in <pfx-file-path> -nokeys -out cert.crt -clcerts -chain |
To extract the private key, execute the following command in your terminal, this file will contain the cryptographic key to make the SSL handshake between the server and the clients.
Code Block |
---|
openssl pkcs12 -in <pfx-file-path> -nocerts -out cert.key -nodes |
Once the files(*.crt, .key) moved to the server, in the ROOMZ certificate folder(e.g. C:\ROOMZ\Certificates), replace each files by your files(*.crt, *.key).
Which files should be replaced to use my SSL certificate
Info |
---|
All ROOMZ certificates are in the folder ROOMZ\Certificates, which is often C:\ROOMZ\Certificates. |
By default, you should replace the files login-cert.crt, login-cert.key, portal-cert.crt, portal-cert.key, portal-api-cert.crt, portal-api-cert.key, viewer-cert.crt, viewer-cert.key and set your certificate password in the files login-cert.pass, portal-cert.pass, portal-api-cert.pass, viewer-cert.pass by your certificate files(*.crt, *.key) extracted using OpenSSL.
Windows SQL Authentication
Note |
---|
ROOMZ On-Premise uses a SQL Database, which will be installed during the setup. If you wish to use the Windows Authentication, you have to follow those steps in your domain controller. The steps will create a file containing metadata of the provided gMSA name as the computer account for the container. Copy the generated file into the host folder |
SQL Database size
The SQL Database will grow from approximately 20MB every year by workspace.
We suggest a database size of 5GB on premise.
SMTP Server
ROOMZ needs an access to your SMTP server to send invitation for the new users created in the portal. To test the SMTP configuration before adding it into the .env file on your server, you can test the settings using the following command.
Code Block |
---|
docker run -it --rm <host> <port> <sender> <recipient> <useSsl> [<username> <password>] |
To have more information about the arguments, type the following command without arguments passed to the tester.
Code Block |
---|
docker run -it --rm |
Example
Code Block |
---|
docker run -it --rm Azure Container Registry | Microsoft Azure smtp.domain.com 547 sender@domain.com recipient@domain.com false myUserName myPassword |
Web browser compatibility
To ensure best performance of ROOMZ, please make sure to always have the latest version of your web browser installed on the machine accessing to the portal
ROOMZ is compatible with the following browsers:
Chrome
Firefox
Edge Chromium
Offline installation (not recommended)
Download
Docker
Please follow the instructions from Mirantis to install the Docker engine, download the docker-compose cli and put the executable into the folder C:\ProgramFiles\Docker of your server.
ROOMZ
Download the ROOMZ archive containing the images from a computer with an internet access, copy the archive on your server, unzip the archive on your server and import the images by executing the following commands where the images are.
Info |
---|
The ROOMZ Archive is not available to download on the portal and can only be provided by ROOMZ |
Install
Info |
---|
An instance of SQL Express is included in the container. The next steps assume that you are using this default instance and not your own SQL server |
Info |
---|
It's recommended to use Powershell as terminal for the following instructions. |
On your offline server, please follow the instructions.
...
Configure your anti-virus software, by following the Docker instructions and exclude the processes dockerd.exe, dotnet.exe, erl.exe and node.exe too.
...
Copy the archive into the folder C:\ROOMZ.
Unzip the archive and import the images by executing the following commands where the images are.
Code Block |
---|
docker load -i redis.tar
docker load -i mssql.tar
docker load -i rabbitmq.tar
docker load -i identity-server.tar
docker load -i frontend-api.tar
docker load -i device-api.tar
docker load -i viewer.tar
docker load -i proxy.tar
docker load -i scheduler.tar |
...
We assume that ALL next commands will be executed in the working directory C:\ROOMZ.
...
ROOMZ needs an SMTP server to send the invitations to the new users created in the portal, you can use our small tool dockerized to test your credentials before adding them in the configuration file.
...
Update the file .env by updating the placeholders { } with your credentials (username, password, etc.) and remove the ones you don't use.
...
To start the ROOMZ environment for the first time, type the command.
Code Block |
---|
docker-compose up --force-recreate --abort-on-container-exit |
...
ROOMZ is Live !
Troubleshooting
By default, docker is not configured to limit the log files created by the running container, you have to configure it to limit the files created and their sizes.
For the other potential issues, please check the docker troubleshooting page: https://docs.docker.com/docker-for-windows/troubleshoot/
Licenses
...
NGINX: https://www.nginx.com/products/nginx/#compare-versions
...
Redis: https://redislabs.com/legal/licenses/
...
RabbitMQ: https://github.com/rabbitmq/rabbitmq-server/blob/master/LICENSE-MPL-RabbitMQ
...
Child pages (Children Display) |
---|