Portainer Templates logo

Portainer Templates

Fuuz In-House Trial Fuuz In-House Trial

Swarm

OpsMesWms

Deploy the Fuuz AI-driven Industrial Intelligence Platform. Unify manufacturing operations across MES, WMS, CMMS, and Quality with built-in DataOps integration, rapid application development, and an event-native architecture — or build your own custom manufacturing applications.

Configuration

Type
Swarm
Platform
linux
Env vars
FUUZ_LICENSE_KEY=''MONGO_INITDB_ROOT_USERNAME=mongodbMONGO_INITDB_ROOT_PASSWORD=adminRABBITMQ_DEFAULT_USER=rabbitmqRABBITMQ_DEFAULT_PASS=adminSMTP_PORT=587SMTP_HOST=''SMTP_USER=''SMTP_PASSWORD=''SMTP_SECURE=falseSMTP_FROM_EMAIL_ADDRESS=''AWS_S3_ACCESS_KEY_ID=LSIAaccessKeyAWS_S3_SECRET_ACCESS_KEY=LSIAsecretKeyAWS_S3_BUCKET_NAME=fuuz-bucketAWS_S3_ENDPOINT_URL=http://localstack.fuuz.localhostAWS_S3_FORCE_PATH_STYLE=trueENABLE_LOCALSTACK=trueMFGX_ENTERPRISE_DOMAIN=fuuz.localhostJWT_EXPIRES_IN=15mJWT_MAX_AGE=90mALLOW_NON_SSL=trueCERT_DIR=/fuuz/certsENGINE_OPTIONS_CONCURRENCY=10ENGINE_LOGGING_EXECUTION_SUCCEEDED=false
Source

Template by portainer·Source

Notes

For information on how to setup this template please visit our documentation here: https://support.fuuz.com/portal/en/kb/articles/setting-up-in-house-fuuz before you continue.

Install on Portainer

Import all app templates into your Portainer instance, for easy 1-click deploys

  1. Ensure both Docker and Portainer are installed, and up-to-date
  2. Log into your Portainer web UI
  3. Under Settings → App Templates, paste the below URL
  4. Head to Home → App Templates, and the list of apps will show up
  5. Select Fuuz In-House Trial, fill in any config options, and hit Deploy

Template Import URL

https://raw.githubusercontent.com/Lissy93/portainer-templates/main/templates.json
Show Me demo

More install options in our documentation.

Check the logs first

Nine times out of ten the logs tell you exactly what went wrong.

  • In Portainer, go to Containers, click the container, then Logs. Or run docker logs <container>
  • Exit codes help too: 137 means killed, usually out of memory. 126 or 127 means the command inside the image is broken.

Required settings are blank

FUUZ_LICENSE_KEY, SMTP_HOST, SMTP_USER, SMTP_PASSWORD, SMTP_FROM_EMAIL_ADDRESS have no default value, and the app may crash or misbehave if left empty.

  • Fill them in on the deploy screen before hitting deploy.

Stack won't deploy

Compose stacks fail fast on small mistakes, and Portainer shows the reason just above the editor.

  • YAML only accepts spaces for indentation, a single tab breaks the whole file.

Raise an issue

Found something which isn't working as it should? Here's how to report it.

A Swarm stack

Fuuz In-House Trial is a Swarm stack. Swarm is Docker's own way of running apps across more than one machine, so Portainer can spread it over a cluster and move it elsewhere if a server drops out.

Environment variables

Environment variables are the settings you hand over when you deploy, things like a password or a timezone. Fuuz In-House Trial takes 24 of them, and 5 need a value before it'll start properly:

  • FUUZ_LICENSE_KEY, needs a value. The license key provided by Fuuz. After signing up you will receive this in an email. Ensure you copied the entire license key otherwise it will not properly validate.
  • MONGO_INITDB_ROOT_USERNAME, defaults to mongodb. Root username for MongoDB. This is used to log into the database and should be kept secure. The value is defaulted to ease of setup for the trial, it's strongly reccomended to create a custom user.
  • MONGO_INITDB_ROOT_PASSWORD, defaults to admin. Root password for MongoDB. This is used to log into the database and should be kept secure. The value is defaulted to ease of setup for the trial, it's strongly reccomended to create a strong password.
  • RABBITMQ_DEFAULT_USER, defaults to rabbitmq. Root username for RabbitMQ. This is used to log into the RabbitMQ Admin Dashboard and should be kept secure. The value is defaulted to ease of setup for the trial, it's strongly reccomended to create a custom user.
  • RABBITMQ_DEFAULT_PASS, defaults to admin. Root password for RabbitMQ. This is used to log into the RabbitMQ Admin Dashboard and should be kept secure. The value is defaulted to ease of setup for the trial, it's strongly reccomended to create a strong password.
  • SMTP_PORT, defaults to 587. Port number for the SMTP server (default is 587)
  • SMTP_HOST, needs a value. Hostname or IP address of the SMTP server
  • SMTP_USER, needs a value. Username for SMTP server authentication
  • SMTP_PASSWORD, needs a value. Password for SMTP server authentication
  • SMTP_SECURE, pick one of true, false. Whether the connection should use SSL/TLS
  • SMTP_FROM_EMAIL_ADDRESS, needs a value. The email address that will appear in the 'From' field of outgoing emails
  • AWS_S3_ACCESS_KEY_ID, defaults to LSIAaccessKey. By default this uses the localstack container running within the stack. If you change this value after storing files you will lose access to those files.
  • AWS_S3_SECRET_ACCESS_KEY, defaults to LSIAsecretKey. By default this uses the localstack container running within the stack. If you change this value after storing files you will lose access to those files.
  • AWS_S3_BUCKET_NAME, defaults to fuuz-bucket. By default when using the localstack container this will be fuuz-bucket. This only needs to be changed if you are persisting files in S3.
  • AWS_S3_ENDPOINT_URL, defaults to http://localstack.fuuz.localhost. By default this uses the localstack container running within the stack. If you are using localstack, this url will be in the format 'http://localstack.${MFGXENTERPRISEDOMAIN}'. If you change the MFGXENTERPRISEDOMAIN ensure you update this to match. If you change this value after storing files you will lose access to those files. If you are using S3 set this with your regions url (ex: https://s3.us-east-1.amazonaws.com).
  • AWS_S3_FORCE_PATH_STYLE, pick one of true, false. If you are using S3 instead of localstack set this to No, otherwise leave the default.
  • ENABLE_LOCALSTACK, pick one of true, false. When true, a proxy route will be setup to direct traffic to the localstack container. If you are using S3 this should be set to false.
  • MFGX_ENTERPRISE_DOMAIN, defaults to fuuz.localhost. The domain name used to access the Fuuz In-House application. By default this will resolve to fuuz.localhost so it can resolve to a local machine. The backend service api will always be defined as api.<domain>. If you are creating DNS records for this ensure you include both api.<domain> and <domain> in your DNS configuration.
  • JWT_EXPIRES_IN, defaults to 15m. Duration before a token needs refreshing. Examples: '15m', '2h', '1d'.
  • JWT_MAX_AGE, defaults to 90m. How long a token can live for before the user needs to re-authenticate. This should always be greater than the Token Expiration.
  • ALLOW_NON_SSL, pick one of true, false. By default the stack is not configured to use SSL/TLS. Set this to false if you want the proxy to upgrade any HTTP requests to HTTPS. You will need to provide valid certificates for this to work properly.
  • CERT_DIR, defaults to /fuuz/certs. Defines where we should look for certificates for the reverse proxy. These aren't required by default as the proxy will generate self-signed certs if no cert is found. The certs need to be named <domain>.crt and <domain>.key to be detected. Review the nginx-proxy logs on startup to determine whether it loaded your certs or generated self-signed ones.
  • ENGINE_OPTIONS_CONCURRENCY, pick one of 5, 10, 15. How many nodes in a data flow can execute concurrently. Scale further by adding orchestration-worker replicas — each replica adds this many concurrent node executions.
  • ENGINE_LOGGING_EXECUTION_SUCCEEDED, pick one of true, false. When true, the engine will log every successful node execution in data flows. It is recommended to leave this as false unless debugging as the database will grow in size rapidly.

Networking

Nothing custom is set, so Fuuz In-House Trial sits on Docker's default bridge network: its own private space that reaches the outside world only through the ports it publishes.

Platform

The platform is linux, the kind of system the container is built to run on. Docker and Portainer handle this on a normal Linux server.

Portainer app templates

Zooming out, this whole page comes from a Portainer app template: a short recipe telling Portainer how to set Fuuz In-House Trial up. Add the template list to Portainer once, then deploying Fuuz In-House Trial is a click rather than a wall of config.