Define install "Checklist"
As part of the review into our self-hosted onboarding review, I want to get a clear checklist of everything that a customer could need to setup in order to have FlowFuse running.
This assumes that a customer already has a VM/OS on which to run FlowFuse.
Initial checklist of external config/setup:
- SMTP Server for E-Mail Notifications
- DNS Records
- TLS Configuration
@ppawlowski have opened this issue, I think it's just the three from my own review of the docs, but can you sanity check that for me please?
@joepavitt as part of this issue, can we include a draft email that we expect our champion to send to their IT? That draft could reside in the docs with a mailto link. Regardless, it would be great if there was a 1 click way of getting this done.
@joepavitt All are valid, however:
- DNS setup is required due to the nature of our application (web service)
- TLS and SMTP configuration are optional and not required for a trial, however, highly expected on production deployments
Actually, when talking about things a customer could need to set up - database is something which needs to be added to the list. For both Docker and Kubernetes approaches we provide simple database instance installation. However, what we provide shouldn't be considered as a enterprise level setup.
In that case, could you create a list based ont he following options:
- Quick Start
- Required/Recommended/Optional
- Production
- Required/Recommended/Optional
Quick Start:
- Required: dedicated domain (DNS setup)
- Optional: TLS, SMTP, external database
Production:
- Required: dedicated domain (DNS setup)
- Recommended: external database, TLS
- Optional: SMTP
A dedicated domain is required in all cases due to the nature of our application. FlowFuse platform will work correctly without TLS, SMTP and external database. However, when running on the production environment, an encrypted connection (TLS) and a highly available database server are expected. SMTP configuration is required for sending e-mails from the platform, but a lack of it does not impact platform security and availability.
For the quick start DNS option - is there n way of at least just providing localhost access?
There is a possibility to configure FlowFuse core app to run on localhost. However, running Node-RED instances won't be possible. They are scheduled to run on the subdomain of the core app. Unfortunately, setting up a wildcard subdomain for localhost is not possible. This approach requires to manually edit hosts file for each Node-RED instance.
There is an alternative described in our documentation which does not require one to have a domain nor make DNS changes. However, this approach requires to use domain which maps to one's computer IP address (not 127.0.0.1) which requires to open 80/tcp port on the firewall. I can imagine, that in some environments this might not be possible. Yet, due to the application requirement (running NR instances on subdomains) this seems to be the quickest way if no domain is available.
For the quick start DNS option - is there n way of at least just providing localhost access?
No
The checklist has been defined and implemented in our documentation.